





<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
  <link rel="dns-prefetch" href="https://github.githubassets.com">
  <link rel="dns-prefetch" href="https://avatars0.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars1.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars2.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars3.githubusercontent.com">
  <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com">
  <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">



  <link crossorigin="anonymous" media="all" integrity="sha512-FG+rXqMOivrAjdEQE7tO4BwM1poGmg70hJFTlNSxjX87grtrZ6UnPR8NkzwUHlQEGviu9XuRYeO8zH9YwvZhdg==" rel="stylesheet" href="https://github.githubassets.com/assets/frameworks-146fab5ea30e8afac08dd11013bb4ee0.css" />
  <link crossorigin="anonymous" media="all" integrity="sha512-amiAO3vdUFnb2paOaFZ1w4h92dAdk9RCVFG5OhOY7iZfg4DSmhtO/EQ0BFRAeK9TCfUzbF87404O9UsVEi/K6g==" rel="stylesheet" href="https://github.githubassets.com/assets/site-6a68803b7bdd5059dbda968e685675c3.css" />
    <link crossorigin="anonymous" media="all" integrity="sha512-SrB0X4ujAxk6uIFCdDuSgWWRh2UHBUlUAht/GLpHVDyI3+HehRnlmR83z56OOY8uDBcFNmZCFNZ/M/PhfaXR5g==" rel="stylesheet" href="https://github.githubassets.com/assets/github-4ab0745f8ba303193ab88142743b9281.css" />
    
    
    
    


  <meta name="viewport" content="width=device-width">
  
  <title>elasticsearch/rest-api-spec/src/main/resources/rest-api-spec/api at master · elastic/elasticsearch · GitHub</title>
    <meta name="description" content="Open Source, Distributed, RESTful Search Engine. Contribute to elastic/elasticsearch development by creating an account on GitHub.">
    <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub">
  <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub">
  <meta property="fb:app_id" content="1401488693436528">

    <meta name="twitter:image:src" content="https://avatars2.githubusercontent.com/u/6764390?s=400&amp;v=4" /><meta name="twitter:site" content="@github" /><meta name="twitter:card" content="summary" /><meta name="twitter:title" content="elastic/elasticsearch" /><meta name="twitter:description" content="Open Source, Distributed, RESTful Search Engine. Contribute to elastic/elasticsearch development by creating an account on GitHub." />
    <meta property="og:image" content="https://avatars2.githubusercontent.com/u/6764390?s=400&amp;v=4" /><meta property="og:site_name" content="GitHub" /><meta property="og:type" content="object" /><meta property="og:title" content="elastic/elasticsearch" /><meta property="og:url" content="https://github.com/elastic/elasticsearch" /><meta property="og:description" content="Open Source, Distributed, RESTful Search Engine. Contribute to elastic/elasticsearch development by creating an account on GitHub." />

  <link rel="assets" href="https://github.githubassets.com/">
  
  

  <meta name="request-id" content="ED08:2E313:48FCA6D:68AE0BD:5E9EB125" data-pjax-transient="true"/><meta name="html-safe-nonce" content="c2bbe6e480391ed7ed59e16f42f6a539cac4affd" data-pjax-transient="true"/><meta name="visitor-payload" content="eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFRDA4OjJFMzEzOjQ4RkNBNkQ6NjhBRTBCRDo1RTlFQjEyNSIsInZpc2l0b3JfaWQiOiI4NjQ2Mjc5MDI0MDAzMTY2NTAxIiwicmVnaW9uX2VkZ2UiOiJhbXMiLCJyZWdpb25fcmVuZGVyIjoiYW1zIn0=" data-pjax-transient="true"/><meta name="visitor-hmac" content="ecd20ed2b53cc2d2b50d1a79d3644912fc072739ec0dca1ad304d76babda385f" data-pjax-transient="true"/>



  <meta name="github-keyboard-shortcuts" content="repository,source-code" data-pjax-transient="true" />

  

  <meta name="selected-link" value="repo_source" data-pjax-transient>

    <meta name="google-site-verification" content="KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU">
  <meta name="google-site-verification" content="ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA">
  <meta name="google-site-verification" content="GXs5KoUUkNCoaAZn7wPN-t01Pywp9M3sEjnt_3_ZWPc">

<meta name="octolytics-host" content="collector.githubapp.com" /><meta name="octolytics-app-id" content="github" /><meta name="octolytics-event-url" content="https://collector.githubapp.com/github-external/browser_event" /><meta name="octolytics-dimension-ga_id" content="" class="js-octo-ga-id" />
<meta name="analytics-location" content="/&lt;user-name&gt;/&lt;repo-name&gt;/files/disambiguate" data-pjax-transient="true" />



    <meta name="google-analytics" content="UA-3769691-2">


<meta class="js-ga-set" name="dimension1" content="Logged Out">



  

      <meta name="hostname" content="github.com">
    <meta name="user-login" content="">

      <meta name="expected-hostname" content="github.com">


    <meta name="enabled-features" content="MARKETPLACE_SOCIAL_PROOF_CUSTOMERS,MARKETPLACE_TRENDING_SOCIAL_PROOF,MARKETPLACE_RECOMMENDATIONS,MARKETPLACE_PENDING_INSTALLATIONS">

  <meta http-equiv="x-pjax-version" content="757cb9e8521bc17bee95b3f28b201635">
  

      <link href="https://github.com/elastic/elasticsearch/commits/master.atom" rel="alternate" title="Recent Commits to elasticsearch:master" type="application/atom+xml">

  <meta name="go-import" content="github.com/elastic/elasticsearch git https://github.com/elastic/elasticsearch.git">

  <meta name="octolytics-dimension-user_id" content="6764390" /><meta name="octolytics-dimension-user_login" content="elastic" /><meta name="octolytics-dimension-repository_id" content="507775" /><meta name="octolytics-dimension-repository_nwo" content="elastic/elasticsearch" /><meta name="octolytics-dimension-repository_public" content="true" /><meta name="octolytics-dimension-repository_is_fork" content="false" /><meta name="octolytics-dimension-repository_network_root_id" content="507775" /><meta name="octolytics-dimension-repository_network_root_nwo" content="elastic/elasticsearch" /><meta name="octolytics-dimension-repository_explore_github_marketplace_ci_cta_shown" content="false" />


    <link rel="canonical" href="https://github.com/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec/api" data-pjax-transient>


  <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats">

  <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors">

  <link rel="mask-icon" href="https://github.githubassets.com/pinned-octocat.svg" color="#000000">
  <link rel="alternate icon" class="js-site-favicon" type="image/png" href="https://github.githubassets.com/favicons/favicon.png">
  <link rel="icon" class="js-site-favicon" type="image/svg+xml" href="https://github.githubassets.com/favicons/favicon.svg">

<meta name="theme-color" content="#1e2327">


  <link rel="manifest" href="/manifest.json" crossOrigin="use-credentials">

  </head>

  <body class="logged-out env-production min-width-lg">
    

    <div class="position-relative js-header-wrapper ">
      <a href="#start-of-content" class="px-2 py-4 bg-blue text-white show-on-focus js-skip-to-content">Skip to content</a>
      <span class="Progress progress-pjax-loader position-fixed width-full js-pjax-loader-bar">
        <span class="progress-pjax-loader-bar top-0 left-0" style="width: 0%;"></span>
      </span>

      
      



          <header class="Header-old header-logged-out  position-relative f4 py-2" role="banner">
  <div class="container-lg d-flex px-3">
    <div class="d-flex flex-justify-between flex-items-center">
        <a class="mr-4" href="https://github.com/" aria-label="Homepage" data-ga-click="(Logged out) Header, go to homepage, icon:logo-wordmark">
          <svg height="32" class="octicon octicon-mark-github text-white" viewBox="0 0 16 16" version="1.1" width="32" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"></path></svg>
        </a>
    </div>

    <div class="HeaderMenu HeaderMenu--logged-out d-flex flex-justify-between flex-items-center flex-auto">
      <div class="d-none">
        <button class="btn-link js-details-target" type="button" aria-label="Toggle navigation" aria-expanded="false">
          <svg height="24" class="octicon octicon-x text-gray" viewBox="0 0 12 16" version="1.1" width="18" aria-hidden="true"><path fill-rule="evenodd" d="M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z"></path></svg>
        </button>
      </div>

        <nav class="mt-0" aria-label="Global">
          <ul class="d-flex list-style-none">
              <li class=" mr-3 mr-lg-3 edge-item-fix position-relative flex-wrap flex-justify-between d-flex flex-items-center ">
                <details class="HeaderMenu-details details-overlay details-reset width-full">
                  <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap  d-inline-block">
                    Why GitHub?
                    <svg x="0px" y="0px" viewBox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-relative">
                      <path d="M1,1l6.2,6L13,1"></path>
                    </svg>
                  </summary>
                  <div class="dropdown-menu flex-auto rounded-1 bg-white px-0 mt-0  p-4 left-n4 position-absolute">
                    <a href="/features" class="py-2 lh-condensed-ultra d-block link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Features">Features <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a>
                    <ul class="list-style-none f5 pb-3">
                      <li class="edge-item-fix"><a href="/features/code-review/" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Code review">Code review</a></li>
                      <li class="edge-item-fix"><a href="/features/project-management/" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Project management">Project management</a></li>
                      <li class="edge-item-fix"><a href="/features/integrations" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Integrations">Integrations</a></li>
                      <li class="edge-item-fix"><a href="/features/actions" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Actions">Actions</a></li>
                      <li class="edge-item-fix"><a href="/features/packages" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to GitHub Packages">Packages</a></li>
                      <li class="edge-item-fix"><a href="/features/security" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Security">Security</a></li>
                      <li class="edge-item-fix"><a href="/features#team-management" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Team management">Team management</a></li>
                      <li class="edge-item-fix"><a href="/features#hosting" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Code hosting">Hosting</a></li>
                    </ul>

                    <ul class="list-style-none mb-0 border-lg-top pt-lg-3">
                      <li class="edge-item-fix"><a href="/customer-stories" class="py-2 lh-condensed-ultra d-block no-underline link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Customer stories">Customer stories <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>
                      <li class="edge-item-fix"><a href="/security" class="py-2 lh-condensed-ultra d-block no-underline link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Security">Security <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>
                    </ul>
                  </div>
                </details>
              </li>
                <li class=" mr-3 mr-lg-3">
                  <a href="/team" class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-ga-click="(Logged out) Header, go to Team">Team</a>
                </li>
              <li class=" mr-3 mr-lg-3">
                <a href="/enterprise" class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-ga-click="(Logged out) Header, go to Enterprise">Enterprise</a>
              </li>

              <li class=" mr-3 mr-lg-3 edge-item-fix position-relative flex-wrap flex-justify-between d-flex flex-items-center ">
                <details class="HeaderMenu-details details-overlay details-reset width-full">
                  <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap  d-inline-block">
                    Explore
                    <svg x="0px" y="0px" viewBox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-relative">
                      <path d="M1,1l6.2,6L13,1"></path>
                    </svg>
                  </summary>

                  <div class="dropdown-menu flex-auto rounded-1 bg-white px-0 pt-2 pb-0 mt-0  p-4 left-n4 position-absolute">
                    <ul class="list-style-none mb-3">
                      <li class="edge-item-fix"><a href="/explore" class="py-2 lh-condensed-ultra d-block link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Explore">Explore GitHub <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>
                    </ul>

                    <h4 class="text-gray-light text-normal text-mono f5 mb-2  border-top pt-3">Learn &amp; contribute</h4>
                    <ul class="list-style-none mb-3">
                      <li class="edge-item-fix"><a href="/topics" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Topics">Topics</a></li>
                        <li class="edge-item-fix"><a href="/collections" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Collections">Collections</a></li>
                      <li class="edge-item-fix"><a href="/trending" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Trending">Trending</a></li>
                      <li class="edge-item-fix"><a href="https://lab.github.com/" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Learning lab">Learning Lab</a></li>
                      <li class="edge-item-fix"><a href="https://opensource.guide" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Open source guides">Open source guides</a></li>
                    </ul>

                    <h4 class="text-gray-light text-normal text-mono f5 mb-2  border-top pt-3">Connect with others</h4>
                    <ul class="list-style-none mb-0">
                      <li class="edge-item-fix"><a href="https://github.com/events" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Events">Events</a></li>
                      <li class="edge-item-fix"><a href="https://github.community" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Community forum">Community forum</a></li>
                      <li class="edge-item-fix"><a href="https://education.github.com" class="py-2 pb-0 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to GitHub Education">GitHub Education</a></li>
                    </ul>
                  </div>
                </details>
              </li>

              <li class=" mr-3 mr-lg-3">
                <a href="/marketplace" class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-ga-click="(Logged out) Header, go to Marketplace">Marketplace</a>
              </li>

              <li class=" mr-3 mr-lg-3 edge-item-fix position-relative flex-wrap flex-justify-between d-flex flex-items-center ">
                <details class="HeaderMenu-details details-overlay details-reset width-full">
                  <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap  d-inline-block">
                    Pricing
                    <svg x="0px" y="0px" viewBox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-relative">
                       <path d="M1,1l6.2,6L13,1"></path>
                    </svg>
                  </summary>

                  <div class="dropdown-menu flex-auto rounded-1 bg-white px-0 pt-2 pb-4 mt-0  p-4 left-n4 position-absolute">
                    <a href="/pricing" class="pb-2 lh-condensed-ultra d-block link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Pricing">Plans <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a>

                    <ul class="list-style-none mb-3">
                      <li class="edge-item-fix"><a href="/pricing#feature-comparison" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Compare plans">Compare plans</a></li>
                      <li class="edge-item-fix"><a href="https://enterprise.github.com/contact" class="py-2 lh-condensed-ultra d-block link-gray no-underline f5" data-ga-click="(Logged out) Header, go to Contact Sales">Contact Sales</a></li>
                    </ul>

                    <ul class="list-style-none mb-0  border-top pt-3">
                      <li class="edge-item-fix"><a href="/nonprofit" class="py-2 lh-condensed-ultra d-block no-underline link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Nonprofits">Nonprofit <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>
                      <li class="edge-item-fix"><a href="https://education.github.com" class="py-2 pb-0 lh-condensed-ultra d-block no-underline link-gray-dark no-underline h5 Bump-link--hover"  data-ga-click="(Logged out) Header, go to Education">Education <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>
                    </ul>
                  </div>
                </details>
              </li>
          </ul>
        </nav>

      <div class="d-flex flex-items-center px-0 text-center text-left">
          <div class="d-lg-flex ">
            <div class="header-search mr-3 scoped-search site-scoped-search js-site-search position-relative js-jump-to"
  role="combobox"
  aria-owns="jump-to-results"
  aria-label="Search or jump to"
  aria-haspopup="listbox"
  aria-expanded="false"
>
  <div class="position-relative">
    <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="js-site-search-form" role="search" aria-label="Site" data-scope-type="Repository" data-scope-id="507775" data-scoped-search-url="/elastic/elasticsearch/search" data-unscoped-search-url="/search" action="/elastic/elasticsearch/search" accept-charset="UTF-8" method="get">
      <label class="form-control input-sm header-search-wrapper p-0 header-search-wrapper-jump-to position-relative d-flex flex-justify-between flex-items-center js-chromeless-input-container">
        <input type="text"
          class="form-control input-sm header-search-input jump-to-field js-jump-to-field js-site-search-focus js-site-search-field is-clearable"
          data-hotkey="s,/"
          name="q"
          value=""
          placeholder="Search"
          data-unscoped-placeholder="Search GitHub"
          data-scoped-placeholder="Search"
          autocapitalize="off"
          aria-autocomplete="list"
          aria-controls="jump-to-results"
          aria-label="Search"
          data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations"
          spellcheck="false"
          autocomplete="off"
          >
          <input type="hidden" data-csrf="true" class="js-data-jump-to-suggestions-path-csrf" value="zYM6rrAr+nBvemot3WYqNI7IzQJB0cqc5/Ib5rGQ2Ux8+9Ok3QsBfnSBaBqZ7b+dF8LG4kibhnnnVXZOYkgEFg==" />
          <input type="hidden" class="js-site-search-type-field" name="type" >
            <img src="https://github.githubassets.com/images/search-key-slash.svg" alt="" class="mr-2 header-search-key-slash">

            <div class="Box position-absolute overflow-hidden d-none jump-to-suggestions js-jump-to-suggestions-container">
              
<ul class="d-none js-jump-to-suggestions-template-container">
  

<li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-suggestion" role="option">
  <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="">
    <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none">
      <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 12 16" version="1.1" role="img"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"></path></svg>
      <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 15 16" version="1.1" role="img"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 00-1 1v14a1 1 0 001 1h13a1 1 0 001-1V1a1 1 0 00-1-1z"></path></svg>
      <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M15.7 13.3l-3.81-3.83A5.93 5.93 0 0013 6c0-3.31-2.69-6-6-6S1 2.69 1 6s2.69 6 6 6c1.3 0 2.48-.41 3.47-1.11l3.83 3.81c.19.2.45.3.7.3.25 0 .52-.09.7-.3a.996.996 0 000-1.41v.01zM7 10.7c-2.59 0-4.7-2.11-4.7-4.7 0-2.59 2.11-4.7 4.7-4.7 2.59 0 4.7 2.11 4.7 4.7 0 2.59-2.11 4.7-4.7 4.7z"></path></svg>
    </div>

    <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28">

    <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target">
    </div>

    <div class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none js-jump-to-badge-search">
      <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository">
        In this repository
      </span>
      <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub">
        All GitHub
      </span>
      <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>

    <div aria-hidden="true" class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump">
      Jump to
      <span class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>
  </a>
</li>

</ul>

<ul class="d-none js-jump-to-no-results-template-container">
  <li class="d-flex flex-justify-center flex-items-center f5 d-none js-jump-to-suggestion p-2">
    <span class="text-gray">No suggested jump to results</span>
  </li>
</ul>

<ul id="jump-to-results" role="listbox" class="p-0 m-0 js-navigation-container jump-to-suggestions-results-container js-jump-to-suggestions-results-container">
  

<li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-scoped-search d-none" role="option">
  <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="">
    <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none">
      <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 12 16" version="1.1" role="img"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"></path></svg>
      <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 15 16" version="1.1" role="img"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 00-1 1v14a1 1 0 001 1h13a1 1 0 001-1V1a1 1 0 00-1-1z"></path></svg>
      <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M15.7 13.3l-3.81-3.83A5.93 5.93 0 0013 6c0-3.31-2.69-6-6-6S1 2.69 1 6s2.69 6 6 6c1.3 0 2.48-.41 3.47-1.11l3.83 3.81c.19.2.45.3.7.3.25 0 .52-.09.7-.3a.996.996 0 000-1.41v.01zM7 10.7c-2.59 0-4.7-2.11-4.7-4.7 0-2.59 2.11-4.7 4.7-4.7 2.59 0 4.7 2.11 4.7 4.7 0 2.59-2.11 4.7-4.7 4.7z"></path></svg>
    </div>

    <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28">

    <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target">
    </div>

    <div class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none js-jump-to-badge-search">
      <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository">
        In this repository
      </span>
      <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub">
        All GitHub
      </span>
      <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>

    <div aria-hidden="true" class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump">
      Jump to
      <span class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>
  </a>
</li>

  

<li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-global-search d-none" role="option">
  <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="">
    <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none">
      <svg height="16" width="16" class="octicon octicon-repo flex-shrink-0 js-jump-to-octicon-repo d-none" title="Repository" aria-label="Repository" viewBox="0 0 12 16" version="1.1" role="img"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"></path></svg>
      <svg height="16" width="16" class="octicon octicon-project flex-shrink-0 js-jump-to-octicon-project d-none" title="Project" aria-label="Project" viewBox="0 0 15 16" version="1.1" role="img"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 00-1 1v14a1 1 0 001 1h13a1 1 0 001-1V1a1 1 0 00-1-1z"></path></svg>
      <svg height="16" width="16" class="octicon octicon-search flex-shrink-0 js-jump-to-octicon-search d-none" title="Search" aria-label="Search" viewBox="0 0 16 16" version="1.1" role="img"><path fill-rule="evenodd" d="M15.7 13.3l-3.81-3.83A5.93 5.93 0 0013 6c0-3.31-2.69-6-6-6S1 2.69 1 6s2.69 6 6 6c1.3 0 2.48-.41 3.47-1.11l3.83 3.81c.19.2.45.3.7.3.25 0 .52-.09.7-.3a.996.996 0 000-1.41v.01zM7 10.7c-2.59 0-4.7-2.11-4.7-4.7 0-2.59 2.11-4.7 4.7-4.7 2.59 0 4.7 2.11 4.7 4.7 0 2.59-2.11 4.7-4.7 4.7z"></path></svg>
    </div>

    <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28">

    <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target">
    </div>

    <div class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none js-jump-to-badge-search">
      <span class="js-jump-to-badge-search-text-default d-none" aria-label="in this repository">
        In this repository
      </span>
      <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub">
        All GitHub
      </span>
      <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>

    <div aria-hidden="true" class="border rounded-1 flex-shrink-0 bg-gray px-1 text-gray-light ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump">
      Jump to
      <span class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>
  </a>
</li>


</ul>

            </div>
      </label>
</form>  </div>
</div>

          </div>

        <a href="/login?return_to=%2Felastic%2Felasticsearch%2Ftree%2Fmaster%2Frest-api-spec%2Fsrc%2Fmain%2Fresources%2Frest-api-spec%2Fapi"
          class="HeaderMenu-link no-underline mr-3"
          data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header menu&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec/api&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="e5ab47ce720da8927e61c292159ec3c8f542bded5847e67a0b9056af8d0b6107"
          data-ga-click="(Logged out) Header, clicked Sign in, text:sign-in">
          Sign&nbsp;in
        </a>
          <a href="/join?source_repo=elastic%2Felasticsearch"
            class="HeaderMenu-link d-inline-block no-underline border border-gray-dark rounded-1 px-2 py-1"
            data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header menu&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec/api&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="e5ab47ce720da8927e61c292159ec3c8f542bded5847e67a0b9056af8d0b6107"
            data-ga-click="(Logged out) Header, clicked Sign up, text:sign-up">
            Sign&nbsp;up
          </a>
      </div>
    </div>
  </div>
</header>

    </div>

  <div id="start-of-content" class="show-on-focus"></div>




    <div id="js-flash-container">


  <template class="js-flash-template">
    <div class="flash flash-full  js-flash-template-container">
  <div class="container-lg px-2" >
    <button class="flash-close js-flash-close" type="button" aria-label="Dismiss this message">
      <svg class="octicon octicon-x" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z"></path></svg>
    </button>
    
      <div class="js-flash-template-message"></div>

  </div>
</div>
  </template>
</div>


      

  <include-fragment class="js-notification-shelf-include-fragment" data-base-src="https://github.com/notifications/beta/shelf"></include-fragment>




  <div class="application-main " data-commit-hovercards-enabled>
        <div itemscope itemtype="http://schema.org/SoftwareSourceCode" class="">
    <main id="js-repo-pjax-container" data-pjax-container >
      
  




  









  <div class="pagehead repohead hx_repohead readability-menu bg-gray-light pb-0 pt-3">

    <div class="d-flex container-lg mb-4 px-3">

      <div class="flex-auto min-width-0 width-fit mr-3">
        <h1 class="public  d-flex flex-wrap flex-items-center break-word float-none ">
  <span class="flex-self-stretch" style="margin-top: -2px;">
      <svg class="octicon octicon-repo" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"></path></svg>
  </span>
  <span class="author ml-2 flex-self-stretch" itemprop="author">
    <a class="url fn" rel="author" data-hovercard-type="organization" data-hovercard-url="/orgs/elastic/hovercard" href="/elastic">elastic</a>
  </span>
  <span class="path-divider flex-self-stretch">/</span>
  <strong itemprop="name" class="mr-2 flex-self-stretch">
    <a data-pjax="#js-repo-pjax-container" href="/elastic/elasticsearch">elasticsearch</a>
  </strong>
  
</h1>


      </div>

      <ul class="pagehead-actions flex-shrink-0 " >




  <li>
    
  <a class="tooltipped tooltipped-s btn btn-sm btn-with-count" aria-label="You must be signed in to watch a repository" rel="nofollow" data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;notification subscription menu watch&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;LOG_IN&quot;,&quot;originating_url&quot;:&quot;https://github.com/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec/api&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="b20c3cb0e7a88b8b75e0c617253ae44799bd8bd4c1f40cf4b277b46a2199b958" href="/login?return_to=%2Felastic%2Felasticsearch">
    <svg class="octicon octicon-eye v-align-text-bottom" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6C13 14 16 8 16 8s-3-6-7.94-6zM8 12c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4zm2-4c0 1.11-.89 2-2 2-1.11 0-2-.89-2-2 0-1.11.89-2 2-2 1.11 0 2 .89 2 2z"></path></svg>
    Watch
</a>    <a class="social-count" href="/elastic/elasticsearch/watchers"
       aria-label="2772 users are watching this repository">
      2.8k
    </a>

  </li>

  <li>
        <a class="btn btn-sm btn-with-count tooltipped tooltipped-s" aria-label="You must be signed in to star a repository" rel="nofollow" data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;star button&quot;,&quot;repository_id&quot;:507775,&quot;auth_type&quot;:&quot;LOG_IN&quot;,&quot;originating_url&quot;:&quot;https://github.com/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec/api&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="b5158663aa8958d4e1988f1cdea86ac6d97e9a82567be006e909e869046cad7f" href="/login?return_to=%2Felastic%2Felasticsearch">
      <svg height="16" class="octicon octicon-star v-align-text-bottom" vertical_align="text_bottom" viewBox="0 0 14 16" version="1.1" width="14" aria-hidden="true"><path fill-rule="evenodd" d="M14 6l-4.9-.64L7 1 4.9 5.36 0 6l3.6 3.26L2.67 14 7 11.67 11.33 14l-.93-4.74L14 6z"></path></svg>

      Star
</a>
    <a class="social-count js-social-count" href="/elastic/elasticsearch/stargazers"
      aria-label="48210 users starred this repository">
      48.2k
    </a>

  </li>

  <li>
      <a class="btn btn-sm btn-with-count tooltipped tooltipped-s" aria-label="You must be signed in to fork a repository" rel="nofollow" data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;repo details fork button&quot;,&quot;repository_id&quot;:507775,&quot;auth_type&quot;:&quot;LOG_IN&quot;,&quot;originating_url&quot;:&quot;https://github.com/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec/api&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="613eb2a6e5eb70091f9b1e1462f7061ff316ef61f26e74806815ef71304316e3" href="/login?return_to=%2Felastic%2Felasticsearch">
        <svg class="octicon octicon-repo-forked v-align-text-bottom" viewBox="0 0 10 16" version="1.1" width="10" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8 1a1.993 1.993 0 00-1 3.72V6L5 8 3 6V4.72A1.993 1.993 0 002 1a1.993 1.993 0 00-1 3.72V6.5l3 3v1.78A1.993 1.993 0 005 15a1.993 1.993 0 001-3.72V9.5l3-3V4.72A1.993 1.993 0 008 1zM2 4.2C1.34 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm3 10c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm3-10c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z"></path></svg>
        Fork
</a>
    <a href="/elastic/elasticsearch/network/members" class="social-count"
       aria-label="16459 users forked this repository">
      16.5k
    </a>
  </li>
</ul>

    </div>
      
<nav class="hx_reponav reponav js-repo-nav js-sidenav-container-pjax clearfix container-lg px-3"
     itemscope
     itemtype="http://schema.org/BreadcrumbList"
    aria-label="Repository"
     data-pjax="#js-repo-pjax-container">

  <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement">
    <a class="js-selected-navigation-item selected reponav-item" itemprop="url" data-hotkey="g c" aria-current="page" data-selected-links="repo_source repo_downloads repo_commits repo_releases repo_tags repo_branches repo_packages /elastic/elasticsearch" href="/elastic/elasticsearch">
      <div class="d-inline"><svg class="octicon octicon-code" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M9.5 3L8 4.5 11.5 8 8 11.5 9.5 13 14 8 9.5 3zm-5 0L0 8l4.5 5L6 11.5 2.5 8 6 4.5 4.5 3z"></path></svg></div>
      <span itemprop="name">Code</span>
      <meta itemprop="position" content="1">
</a>  </span>

    <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement">
      <a itemprop="url" data-hotkey="g i" class="js-selected-navigation-item reponav-item" data-selected-links="repo_issues repo_labels repo_milestones /elastic/elasticsearch/issues" href="/elastic/elasticsearch/issues">
        <div class="d-inline"><svg class="octicon octicon-issue-opened" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 011.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"></path></svg></div>
        <span itemprop="name">Issues</span>
        <span class="Counter">2,385</span>
        <meta itemprop="position" content="2">
</a>    </span>

  <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement">
    <a data-hotkey="g p" data-skip-pjax="true" itemprop="url" class="js-selected-navigation-item reponav-item" data-selected-links="repo_pulls checks /elastic/elasticsearch/pulls" href="/elastic/elasticsearch/pulls">
      <div class="d-inline"><svg class="octicon octicon-git-pull-request" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M11 11.28V5c-.03-.78-.34-1.47-.94-2.06C9.46 2.35 8.78 2.03 8 2H7V0L4 3l3 3V4h1c.27.02.48.11.69.31.21.2.3.42.31.69v6.28A1.993 1.993 0 0010 15a1.993 1.993 0 001-3.72zm-1 2.92c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zM4 3c0-1.11-.89-2-2-2a1.993 1.993 0 00-1 3.72v6.56A1.993 1.993 0 002 15a1.993 1.993 0 001-3.72V4.72c.59-.34 1-.98 1-1.72zm-.8 10c0 .66-.55 1.2-1.2 1.2-.65 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2zM2 4.2C1.34 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z"></path></svg></div>
      <span itemprop="name">Pull requests</span>
      <span class="Counter">336</span>
      <meta itemprop="position" content="4">
</a>  </span>


    <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement" class="position-relative float-left">
      <a data-hotkey="g w" data-skip-pjax="true" class="js-selected-navigation-item reponav-item" data-selected-links="repo_actions /elastic/elasticsearch/actions" href="/elastic/elasticsearch/actions">
        <div class="d-inline"><svg class="octicon octicon-play" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M14 8A7 7 0 110 8a7 7 0 0114 0zm-8.223 3.482l4.599-3.066a.5.5 0 000-.832L5.777 4.518A.5.5 0 005 4.934v6.132a.5.5 0 00.777.416z"></path></svg></div>
        Actions
</a>
    </span>

    <a data-hotkey="g b" class="js-selected-navigation-item reponav-item" data-selected-links="repo_projects new_repo_project repo_project /elastic/elasticsearch/projects" href="/elastic/elasticsearch/projects">
      <div class="d-inline"><svg class="octicon octicon-project" viewBox="0 0 15 16" version="1.1" width="15" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M10 12h3V2h-3v10zm-4-2h3V2H6v8zm-4 4h3V2H2v12zm-1 1h13V1H1v14zM14 0H1a1 1 0 00-1 1v14a1 1 0 001 1h13a1 1 0 001-1V1a1 1 0 00-1-1z"></path></svg></div>
      Projects
      <span class="Counter">1</span>
</a>

    <a data-skip-pjax="true" class="js-selected-navigation-item reponav-item" data-selected-links="security overview alerts policy token_scanning code_scanning /elastic/elasticsearch/security" href="/elastic/elasticsearch/security">
      <div class="d-inline"><svg class="octicon octicon-shield" viewBox="0 0 14 16" version="1.1" width="14" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M0 2l7-2 7 2v6.02C14 12.69 8.69 16 7 16c-1.69 0-7-3.31-7-7.98V2zm1 .75L7 1l6 1.75v5.268C13 12.104 8.449 15 7 15c-1.449 0-6-2.896-6-6.982V2.75zm1 .75L7 2v12c-1.207 0-5-2.482-5-5.985V3.5z"></path></svg></div>
      Security
          <span class="Counter js-security-tab-count" data-url="/elastic/elasticsearch/security/overall-count" hidden></span>
</a>
    <a class="js-selected-navigation-item reponav-item" data-selected-links="repo_graphs repo_contributors dependency_graph dependabot_updates pulse people /elastic/elasticsearch/pulse" href="/elastic/elasticsearch/pulse">
      <div class="d-inline"><svg class="octicon octicon-graph" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M16 14v1H0V0h1v14h15zM5 13H3V8h2v5zm4 0H7V3h2v10zm4 0h-2V6h2v7z"></path></svg></div>
      Insights
</a>

</nav>


  </div>


<div class="container-lg clearfix new-discussion-timeline  px-3">
  <div class="repository-content ">

    
    

  <div class="file-navigation ">
    
<details class="details-reset details-overlay branch-select-menu float-left" id="branch-select-menu">
  <summary class="btn css-truncate btn-sm"
           data-hotkey="w"
           title="Switch branches or tags">
    <i>Branch:</i>
    <span class="css-truncate-target" data-menu-button>master</span>
    <span class="dropdown-caret"></span>
  </summary>

  <details-menu class="SelectMenu SelectMenu--hasFilter" src="/elastic/elasticsearch/refs/master/rest-api-spec/src/main/resources/rest-api-spec/api?source_action=disambiguate&amp;source_controller=files" preload>
    <div class="SelectMenu-modal">
      <include-fragment class="SelectMenu-loading" aria-label="Menu is loading">
        <svg class="octicon octicon-octoface anim-pulse" height="32" viewBox="0 0 16 16" version="1.1" width="32" aria-hidden="true"><path fill-rule="evenodd" d="M14.7 5.34c.13-.32.55-1.59-.13-3.31 0 0-1.05-.33-3.44 1.3-1-.28-2.07-.32-3.13-.32s-2.13.04-3.13.32c-2.39-1.64-3.44-1.3-3.44-1.3-.68 1.72-.26 2.99-.13 3.31C.49 6.21 0 7.33 0 8.69 0 13.84 3.33 15 7.98 15S16 13.84 16 8.69c0-1.36-.49-2.48-1.3-3.35zM8 14.02c-3.3 0-5.98-.15-5.98-3.35 0-.76.38-1.48 1.02-2.07 1.07-.98 2.9-.46 4.96-.46 2.07 0 3.88-.52 4.96.46.65.59 1.02 1.3 1.02 2.07 0 3.19-2.68 3.35-5.98 3.35zM5.49 9.01c-.66 0-1.2.8-1.2 1.78s.54 1.79 1.2 1.79c.66 0 1.2-.8 1.2-1.79s-.54-1.78-1.2-1.78zm5.02 0c-.66 0-1.2.79-1.2 1.78s.54 1.79 1.2 1.79c.66 0 1.2-.8 1.2-1.79s-.53-1.78-1.2-1.78z"></path></svg>
      </include-fragment>
    </div>
  </details-menu>
</details>

    <div class="BtnGroup float-right">
      
    <button class="btn btn-sm BtnGroup-item disabled tooltipped tooltipped-n" aria-label="You must be signed in to make or propose changes" type="button">
      Create new file
    </button>



      <a href="/elastic/elasticsearch/find/master" data-pjax data-hotkey="t" class="js-pjax-capture-input btn btn-sm BtnGroup-item empty-icon">
        Find file
      </a>
      <a href="/elastic/elasticsearch/commits/master/rest-api-spec/src/main/resources/rest-api-spec/api" class="btn btn-sm BtnGroup-item empty-icon">
        History
      </a>
    </div>
    <div class="breadcrumb mb-2"><span class="js-repo-root text-bold"><span class="js-path-segment"><a data-pjax="true" href="/elastic/elasticsearch"><span>elasticsearch</span></a></span></span><span class="separator">/</span><span class="js-path-segment"><a data-pjax="true" href="/elastic/elasticsearch/tree/master/rest-api-spec"><span>rest-api-spec</span></a></span><span class="separator">/</span><span class="js-path-segment"><a data-pjax="true" href="/elastic/elasticsearch/tree/master/rest-api-spec/src"><span>src</span></a></span><span class="separator">/</span><span class="js-path-segment"><a data-pjax="true" href="/elastic/elasticsearch/tree/master/rest-api-spec/src/main"><span>main</span></a></span><span class="separator">/</span><span class="js-path-segment"><a data-pjax="true" href="/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources"><span>resources</span></a></span><span class="separator">/</span><span class="js-path-segment"><a data-pjax="true" href="/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec"><span>rest-api-spec</span></a></span><span class="separator">/</span><strong class="final-path">api</strong><span class="separator">/</span></div>
  </div>

  

<div class="Box mb-3 Box--condensed">
  <div class="Box-header Box-header--blue position-relative "
    style="margin-bottom:-1px;">
    <h2 class="sr-only">Latest commit</h2>
    <div class="commit-tease js-details-container Details d-flex rounded-top-1 flex-auto" data-issue-and-pr-hovercards-enabled>
        
    
<div class="AvatarStack flex-self-start ">
  <div class="AvatarStack-body" aria-label="dakrone">
        <a class="avatar avatar-user" data-skip-pjax="true" data-hovercard-type="user" data-hovercard-url="/users/dakrone/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="/dakrone">
          <img height="20" width="20" alt="@dakrone" src="https://avatars3.githubusercontent.com/u/19060?s=60&amp;v=4" class=" avatar-user" />
</a>  </div>
</div>

    <div class="flex-auto f6 mr-3">
      
      <a href="/elastic/elasticsearch/commits?author=dakrone"
     class="commit-author tooltipped tooltipped-s user-mention"
     aria-label="View all commits by dakrone">dakrone</a>


  


        <a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="message text-inherit" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">Add prefer_v2_templates flag and index setting (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="602098871" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55411" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55411/hovercard" href="https://github.com/elastic/elasticsearch/pull/55411">#55411</a><a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="message text-inherit" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">)</a>
          <span class="hidden-text-expander inline">
            <button type="button" class="ellipsis-expander js-details-target" aria-expanded="false">&hellip;</button>
          </span>

        <div class="commit-desc"><pre class="text-small">This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="575347703" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53101" data-hovercard-type="issue" data-hovercard-url="/elastic/elasticsearch/issues/53101/hovercard" href="https://github.com/elastic/elasticsearch/issues/53101">#53101</a></pre></div>
    </div>
    <div class="no-wrap d-flex flex-self-start flex-items-baseline">
        <span class="mr-2 flex-self-center">
          <include-fragment accept="text/fragment+html" src="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f/rollup?direction=w" class="d-inline"></include-fragment>
        </span>
      <span class="mr-1">Latest commit</span>
      <a class="commit-tease-sha mr-1" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f" data-pjax>
        0202e1a
      </a>
      <span itemprop="dateModified"><relative-time datetime="2020-04-20T16:04:42Z" class="no-wrap">Apr 20, 2020</relative-time></span>
    </div>
    </div>
  </div>
  <h2 id="files"  class="sr-only">Files</h2>
  


    <a class="d-none js-permalink-shortcut" data-hotkey="y" href="/elastic/elasticsearch/tree/6f493ec6791548057922082057cf900fdaa1aa72/rest-api-spec/src/main/resources/rest-api-spec/api">Permalink</a>

    <table class="files js-navigation-container js-active-navigation-container " data-pjax>
      <thead>
        <tr>
          <th><span class="sr-only">Type</span></th>
          <th><span class="sr-only">Name</span></th>
          <th><span class="sr-only">Latest commit message</span></th>
          <th><span class="sr-only">Commit time</span></th>
        </tr>
      </thead>
        <tr class="up-tree js-navigation-item" >
          <td></td>
          <td><a rel="nofollow" title="Go to parent directory" class="js-navigation-open" href="/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec">..</a></td>
          <td></td>
          <td></td>
        </tr>


      <tbody>
        <tr class="warning include-fragment-error">
          <td class="icon"><svg class="octicon octicon-alert" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 000 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 00.01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"></path></svg></td>
          <td class="content" colspan="3">Failed to load latest commit information.</td>
        </tr>

          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="_common.json" id="17cc6f80c933a1e51854dd0f2dfa2a56-1505db774f0d1b9f79a452351792f7c2c5746fe3" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/_common.json">_common.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="update _common.json format (#46872)

API spec now use an object for the documentation field. _common was not updated yet. This commit updates _common.json and its corresponding parser.

Closes #46744

Co-Authored-By: Tomas Della Vedova &lt;delvedor@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/74e3af5c9edae1d46f3fd838de1e73f449d8ec9b">update _common.json format (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="495817301" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46872" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46872/hovercard" href="https://github.com/elastic/elasticsearch/pull/46872">#46872</a><a data-pjax="true" title="update _common.json format (#46872)

API spec now use an object for the documentation field. _common was not updated yet. This commit updates _common.json and its corresponding parser.

Closes #46744

Co-Authored-By: Tomas Della Vedova &lt;delvedor@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/74e3af5c9edae1d46f3fd838de1e73f449d8ec9b">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-23T15:00:37Z" class="no-wrap">Sep 23, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="bulk.json" id="6c4fbc1bd36df5d9905ce1df9cf222c0-34b4bd9939ad325b7368a882aabdd35a1fcf9eb9" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/bulk.json">bulk.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">Add prefer_v2_templates flag and index setting (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="602098871" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55411" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55411/hovercard" href="https://github.com/elastic/elasticsearch/pull/55411">#55411</a><a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T16:04:42Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.aliases.json" id="22e2d431e2e1793e41b5f065dceaa89e-1ba12b00c8178b0afaf60ff8e02d7fe01ffd8741" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.aliases.json">cat.aliases.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.allocation.json" id="4579bbcb4332bcaa7d0fb18c63b2fdd1-7b3dc70b03c38f15a2ad08181e0f30d242ba7dbb" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.allocation.json">cat.allocation.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.count.json" id="aa6d9382bc0b00917e17cb6dec212d42-8cfaddf8db83b506d6809dcfe55a029f60bbb891" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.count.json">cat.count.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="[DOCS] Remove unsupported `local` and `master_timeout` parms from cat API docs (#47933)" class="link-gray" href="/elastic/elasticsearch/commit/64c1dfa72773ece2c9d1936d9f0c1280ecd21a21">[DOCS] Remove unsupported `local` and `master_timeout` parms from cat…</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-10-14T15:38:46Z" class="no-wrap">Oct 14, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.fielddata.json" id="ac8f77984707b6255de6dc1447665b53-9fbde4736b5efd3a96922c80e4a3e903100395ee" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.fielddata.json">cat.fielddata.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="[DOCS] Remove unsupported `local` and `master_timeout` parms from cat API docs (#47933)" class="link-gray" href="/elastic/elasticsearch/commit/64c1dfa72773ece2c9d1936d9f0c1280ecd21a21">[DOCS] Remove unsupported `local` and `master_timeout` parms from cat…</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-10-14T15:38:46Z" class="no-wrap">Oct 14, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.health.json" id="2339db869d5a3d7653d999028dbf5dbb-bd7454b8046b83c073ce77eb4db4f22b01014ec3" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.health.json">cat.health.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.help.json" id="2c1bf912a288d9a69ad3aa77a0ad1c3a-54ab6d6e5168cc283c57be88d954c816f88fae5d" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.help.json">cat.help.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.indices.json" id="51f4fa0dcdc855c076d42cd209daefbf-a92189134f88f91a97e2e2d06544aa6badd265f9" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.indices.json">cat.indices.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.master.json" id="777752fc1e100524ad85bffc292b262b-63fe159ee56b83bac92aa5b0f648fa8be5519133" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.master.json">cat.master.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.nodeattrs.json" id="1db897e5b423bc3115781de6209b27a9-e688e23cab089352474e4dc2b49925f86b004d65" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.nodeattrs.json">cat.nodeattrs.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.nodes.json" id="c673b074876c5b81edb6826075e32d92-849d6f243315ca5a43b5c8caf352de676a4eb3b8" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.nodes.json">cat.nodes.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">Time parameter includes description (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525742844" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49368" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49368/hovercard" href="https://github.com/elastic/elasticsearch/pull/49368">#49368</a><a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-02-06T16:18:22Z" class="no-wrap">Feb 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.pending_tasks.json" id="a51d665aca06cbf8fca196ef68c5490e-36fa33be495cdbfcbe3bf33886e42e3b4bfc877c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.pending_tasks.json">cat.pending_tasks.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">Time parameter includes description (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525742844" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49368" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49368/hovercard" href="https://github.com/elastic/elasticsearch/pull/49368">#49368</a><a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-02-06T16:18:22Z" class="no-wrap">Feb 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.plugins.json" id="babca80f1103a775be37ca111c02126b-d5346c6d9e7b44ab7318209dfca2d7d5a539410c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.plugins.json">cat.plugins.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.recovery.json" id="b2755b9dbefea2a2111d7d436f45eeb2-7baf0b8ded6099934d539adaaf6cbafe462e6e31" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.recovery.json">cat.recovery.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">Time parameter includes description (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525742844" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49368" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49368/hovercard" href="https://github.com/elastic/elasticsearch/pull/49368">#49368</a><a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-02-06T16:18:22Z" class="no-wrap">Feb 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.repositories.json" id="bbaebf30b084249a09dcfbe86697eb39-84d9965907ff368e28ba68ee68f074e2b5029161" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.repositories.json">cat.repositories.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.segments.json" id="f83e55e75343f860635f6a521d60cf41-472ef7fd22eee69951faa2826e303ad6f4bdb0a1" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.segments.json">cat.segments.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.shards.json" id="864b15ab41822be341f433cdcd6b294a-a13c0f6bf6d4abc4e981ca97fe66396b3947bd14" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.shards.json">cat.shards.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">Time parameter includes description (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525742844" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49368" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49368/hovercard" href="https://github.com/elastic/elasticsearch/pull/49368">#49368</a><a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-02-06T16:18:22Z" class="no-wrap">Feb 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.snapshots.json" id="4469f919a303ce0321831650cfd4c781-757c2cfbe7dc6b4f6a365bd74d36445e94e5f5ed" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.snapshots.json">cat.snapshots.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">Time parameter includes description (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525742844" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49368" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49368/hovercard" href="https://github.com/elastic/elasticsearch/pull/49368">#49368</a><a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-02-06T16:18:22Z" class="no-wrap">Feb 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.tasks.json" id="8a381984401b215a07dedad26e25e7ca-ae25ab10c01384b307cf8c0da36ab28e2fb1a622" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.tasks.json">cat.tasks.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">Time parameter includes description (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525742844" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49368" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49368/hovercard" href="https://github.com/elastic/elasticsearch/pull/49368">#49368</a><a data-pjax="true" title="Time parameter includes description (#49368)

* Time parameter includes description

In option enumeration causing codegenerators to pick up the description
as a value to send.

* cat.shards missing ending quotes" class="link-gray" href="/elastic/elasticsearch/commit/1c3b341960e3b70555927bdbab325d26382f68b2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-02-06T16:18:22Z" class="no-wrap">Feb 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.templates.json" id="81360078da6a423aef3ec00970328eea-53fc872b5dae2d1cfa60996fa091895d013bd5ee" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.templates.json">cat.templates.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cat.thread_pool.json" id="0f45c62bc5b57fcaf01a0ee8e2be1a1f-d2ce7ed665d5a286c5e08c0e40cd3338e3de673c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cat.thread_pool.json">cat.thread_pool.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="clear_scroll.json" id="fb88c998e68dce2106c94c0bc6cc3dac-f484c94246c7ba562997b7aa9c739236d95724a8" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/clear_scroll.json">clear_scroll.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">Fixes for API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="491529992" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46522" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46522/hovercard" href="https://github.com/elastic/elasticsearch/pull/46522">#46522</a><a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-16T09:23:57Z" class="no-wrap">Sep 16, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.allocation_explain.json" id="2234582303e104deaaa156fc8617a3fa-e46218a781e1b93a918852e3c0127753e7a3bc97" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.allocation_explain.json">cluster.allocation_explain.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.delete_component_template.json" id="6c7d0b363aef169c42291853cbd890c1-6ddfe6c7ead5fa711e5e07677c3621d8305358fe" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.delete_component_template.json">cluster.delete_component_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add REST API for ComponentTemplate CRUD (#53558)

* Add REST API for ComponentTemplate CRUD

This adds the Put/Get/DeleteComponentTemplate APIs that allow inserting, retrieving, and removing
ComponentTemplateMetadata into the cluster state metadata.

These APIs are currently only available behind a feature flag system property -
`es.itv2_feature_flag_registered`.

Relates to #53101

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/263e525e496498b9a2006675178105cb20114d2c">Add REST API for ComponentTemplate CRUD (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="580786522" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53558" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53558/hovercard" href="https://github.com/elastic/elasticsearch/pull/53558">#53558</a><a data-pjax="true" title="Add REST API for ComponentTemplate CRUD (#53558)

* Add REST API for ComponentTemplate CRUD

This adds the Put/Get/DeleteComponentTemplate APIs that allow inserting, retrieving, and removing
ComponentTemplateMetadata into the cluster state metadata.

These APIs are currently only available behind a feature flag system property -
`es.itv2_feature_flag_registered`.

Relates to #53101

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/263e525e496498b9a2006675178105cb20114d2c">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-17T16:55:07Z" class="no-wrap">Mar 17, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.exists_component_template.json" id="0ed2a990f26daf5ca1f291601f48ddc1-23c918d6056061dac6353888b0aa5e1203b6b66b" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.exists_component_template.json">cluster.exists_component_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="HLRC support for Component Templates APIs (#54635)

* HLRC support for Component Templates

* hlrc

* hlrc

* merge fix

* removed unused import

* checkstyle fixes

* metaData -&gt; metadata

* move to ClusterClient

* checkstyle fixes

* checkstyle fixes

* checkstyle fixes

* method in spec fixed

* PR comments

* PR comments

* PR comments

* unused imports fixed

* review comment

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/ad8590e190efe5858e9171ee67a4eb592a51b2e5">HLRC support for Component Templates APIs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="592554866" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54635" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54635/hovercard" href="https://github.com/elastic/elasticsearch/pull/54635">#54635</a><a data-pjax="true" title="HLRC support for Component Templates APIs (#54635)

* HLRC support for Component Templates

* hlrc

* hlrc

* merge fix

* removed unused import

* checkstyle fixes

* metaData -&gt; metadata

* move to ClusterClient

* checkstyle fixes

* checkstyle fixes

* checkstyle fixes

* method in spec fixed

* PR comments

* PR comments

* PR comments

* unused imports fixed

* review comment

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/ad8590e190efe5858e9171ee67a4eb592a51b2e5">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-06T16:52:25Z" class="no-wrap">Apr 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.get_component_template.json" id="61d41a2b7d2d93c10b272104dd96a20f-27bd093e620f030009811dbe4ee8700ddc82e55a" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.get_component_template.json">cluster.get_component_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add REST API for ComponentTemplate CRUD (#53558)

* Add REST API for ComponentTemplate CRUD

This adds the Put/Get/DeleteComponentTemplate APIs that allow inserting, retrieving, and removing
ComponentTemplateMetadata into the cluster state metadata.

These APIs are currently only available behind a feature flag system property -
`es.itv2_feature_flag_registered`.

Relates to #53101

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/263e525e496498b9a2006675178105cb20114d2c">Add REST API for ComponentTemplate CRUD (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="580786522" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53558" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53558/hovercard" href="https://github.com/elastic/elasticsearch/pull/53558">#53558</a><a data-pjax="true" title="Add REST API for ComponentTemplate CRUD (#53558)

* Add REST API for ComponentTemplate CRUD

This adds the Put/Get/DeleteComponentTemplate APIs that allow inserting, retrieving, and removing
ComponentTemplateMetadata into the cluster state metadata.

These APIs are currently only available behind a feature flag system property -
`es.itv2_feature_flag_registered`.

Relates to #53101

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/263e525e496498b9a2006675178105cb20114d2c">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-17T16:55:07Z" class="no-wrap">Mar 17, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.get_settings.json" id="381ace7cc8ee62a6a019ff3d4fa5918b-6f91fbbedf5de9c5ed7092ce531006a94ac99776" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.get_settings.json">cluster.get_settings.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.health.json" id="c2c52db081b723be399bb732f65aca84-894b141f2f3b365d523f58c5e15c171709772326" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.health.json">cluster.health.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.pending_tasks.json" id="8a69fbf26be58ddfb4da9890e9ab2c28-d940adf9aef5d9fb5bb837a1becb09a11ebe41ca" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.pending_tasks.json">cluster.pending_tasks.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.put_component_template.json" id="0522305a8cf6e4abef3f549be472afed-3bdac2357d023167985f699aea90db7b282856f2" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.put_component_template.json">cluster.put_component_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add REST API for ComponentTemplate CRUD (#53558)

* Add REST API for ComponentTemplate CRUD

This adds the Put/Get/DeleteComponentTemplate APIs that allow inserting, retrieving, and removing
ComponentTemplateMetadata into the cluster state metadata.

These APIs are currently only available behind a feature flag system property -
`es.itv2_feature_flag_registered`.

Relates to #53101

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/263e525e496498b9a2006675178105cb20114d2c">Add REST API for ComponentTemplate CRUD (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="580786522" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53558" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53558/hovercard" href="https://github.com/elastic/elasticsearch/pull/53558">#53558</a><a data-pjax="true" title="Add REST API for ComponentTemplate CRUD (#53558)

* Add REST API for ComponentTemplate CRUD

This adds the Put/Get/DeleteComponentTemplate APIs that allow inserting, retrieving, and removing
ComponentTemplateMetadata into the cluster state metadata.

These APIs are currently only available behind a feature flag system property -
`es.itv2_feature_flag_registered`.

Relates to #53101

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/263e525e496498b9a2006675178105cb20114d2c">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-17T16:55:07Z" class="no-wrap">Mar 17, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.put_settings.json" id="e87166468da155e9d9c15de6e56a9f9e-f6b9a0863380ec639ae2197f50dfa05a07cfa565" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.put_settings.json">cluster.put_settings.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.remote_info.json" id="191a8cb57fcc96738fb630c37658343d-4eac0b55ce6f145f42360b5045f010e3123ecf70" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.remote_info.json">cluster.remote_info.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.reroute.json" id="a2b21ed6ff197a1803c961126ab8960c-b0e8054fc9e53914f4225faca47c33a0a98c001b" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.reroute.json">cluster.reroute.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.state.json" id="6acc013937ed94065ffab45cc3d7ec36-017705082d189e51b47414a3c35112a18ee23a00" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.state.json">cluster.state.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="cluster.stats.json" id="ddd8cd720c91c6531768ce3ede81e8d3-f36db0979f4f7f264a96d4d83940f4417df98f14" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/cluster.stats.json">cluster.stats.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="count.json" id="3baa357d5adf340622c003b0856dd25f-93a450afff88a6e0df2b5d5591a24a1c32006664" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/count.json">count.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="create.json" id="2068f1e5e846cac32ba7374c97633c78-21eca1bc792bef524cdf7cc1d70ee0a4214781e4" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/create.json">create.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">Add prefer_v2_templates flag and index setting (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="602098871" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55411" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55411/hovercard" href="https://github.com/elastic/elasticsearch/pull/55411">#55411</a><a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T16:04:42Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="delete.json" id="32e7b62c510daf7d16345f4d4bb54d69-52ab302c6e5a132dd8f284e098d27485cb0a892f" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/delete.json">delete.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="[DOCS] Fix typos in several REST API specs (#51197)

Changes `effected` to `affected` in several REST API spec files." class="link-gray" href="/elastic/elasticsearch/commit/c3b5f713e2a9fdfc6a9f05892aa7647d905b55d4">[DOCS] Fix typos in several REST API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="551934955" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/51197" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/51197/hovercard" href="https://github.com/elastic/elasticsearch/pull/51197">#51197</a><a data-pjax="true" title="[DOCS] Fix typos in several REST API specs (#51197)

Changes `effected` to `affected` in several REST API spec files." class="link-gray" href="/elastic/elasticsearch/commit/c3b5f713e2a9fdfc6a9f05892aa7647d905b55d4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-01-22T17:17:33Z" class="no-wrap">Jan 22, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="delete_by_query.json" id="1be069693a43a7efc73e3cbbee3df9d6-8641c18382dfcf70c65c30eb6725710f82a06855" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/delete_by_query.json">delete_by_query.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="delete_by_query_rethrottle.json" id="85793bc828bdda60c8c2cbb122197ca2-112bfc8a7d2e0593278b04440f42bf2aa9e7910d" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/delete_by_query_rethrottle.json">delete_by_query_rethrottle.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="delete_script.json" id="0f1829713245eba3e6695da9d37342c1-b38b97ae57c2e367f7fa2d197a78e391b513f7eb" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/delete_script.json">delete_script.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="exists.json" id="3d89dbbbdf2cfe3ecaccea759487838f-a8e6b6786ca907e36fb0c1c6fadc03323f57a867" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/exists.json">exists.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">Remove force from version_type enum in rest-spec (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525745740" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49370" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49370/hovercard" href="https://github.com/elastic/elasticsearch/pull/49370">#49370</a><a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-11-26T08:58:33Z" class="no-wrap">Nov 26, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="exists_source.json" id="f62341d4d4516f05230edf21d9e12962-3ae8d60ee6edeed04f2b1d7e0c575487584c9f3f" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/exists_source.json">exists_source.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">Remove force from version_type enum in rest-spec (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525745740" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49370" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49370/hovercard" href="https://github.com/elastic/elasticsearch/pull/49370">#49370</a><a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-11-26T08:58:33Z" class="no-wrap">Nov 26, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="explain.json" id="f1262f2a3266d79bc85a4907d455c177-7f630f7666f30165579473a54a69b75da7a91159" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/explain.json">explain.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove types from explain API (#46926)

We no longer need a type to get the source of a document, so we can remove it from
the explain API as well.

Relates to #41059" class="link-gray" href="/elastic/elasticsearch/commit/b733f9e80300edd434c0a449eccfa6f921a704ba">Remove types from explain API (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="496373649" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46926" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46926/hovercard" href="https://github.com/elastic/elasticsearch/pull/46926">#46926</a><a data-pjax="true" title="Remove types from explain API (#46926)

We no longer need a type to get the source of a document, so we can remove it from
the explain API as well.

Relates to #41059" class="link-gray" href="/elastic/elasticsearch/commit/b733f9e80300edd434c0a449eccfa6f921a704ba">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-23T16:55:09Z" class="no-wrap">Sep 23, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="field_caps.json" id="0ad1c1edf1c40a85b41de0855f5f1f78-d56c3313a0bf0a35436568768b72c448ff5e6985" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/field_caps.json">field_caps.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="get.json" id="08e364c89f4f291dd93f7be65f3c1629-36d08c0313bde79d9071d88c27953619a17b1006" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/get.json">get.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">Remove force from version_type enum in rest-spec (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525745740" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49370" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49370/hovercard" href="https://github.com/elastic/elasticsearch/pull/49370">#49370</a><a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-11-26T08:58:33Z" class="no-wrap">Nov 26, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="get_script.json" id="ec949f8f96d44ae7d86392e6939249fc-14307bea2ef0bc441a7d20a199d4d2133ce32aa2" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/get_script.json">get_script.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="get_script_context.json" id="c5035cc188d8dd7325ff103f37d2c87c-aa770ee9d9f2edd7e8d77ca47da1f50d5a8f7204" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/get_script_context.json">get_script_context.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="get_script_languages.json" id="d9c07a74e37f69be48728138c2cb15d1-a5e06cb88901b19dd1882e20463eb0d03479b1a1" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/get_script_languages.json">get_script_languages.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="get_source.json" id="06c3cb0e17ebff492b057f22db913580-d99a1882424806cae37b26ea3756fc5006f281a4" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/get_source.json">get_source.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">Remove force from version_type enum in rest-spec (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525745740" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49370" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49370/hovercard" href="https://github.com/elastic/elasticsearch/pull/49370">#49370</a><a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-11-26T08:58:33Z" class="no-wrap">Nov 26, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="index.json" id="9e743aa713dcae5405f290e3db88178b-f7fe9ac954001cda55162af76b727e9ec68bbdd5" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/index.json">index.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">Add prefer_v2_templates flag and index setting (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="602098871" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55411" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55411/hovercard" href="https://github.com/elastic/elasticsearch/pull/55411">#55411</a><a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T16:04:42Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.analyze.json" id="ea53ca0f9f948fb3fa7fb805c578af11-aa8e84c1985d670764c9d98116a38777701dce09" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.analyze.json">indices.analyze.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.clear_cache.json" id="2c9d7dd90e792d3063a65d93493a8d3e-64c10a520c7c4822454da5d0c1e23ad003729a83" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.clear_cache.json">indices.clear_cache.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.clone.json" id="a17c1e30c4a2c024b225989a3d65c0f2-d3a249583bd84165b28a36930a735eae4c04cfce" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.clone.json">indices.clone.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">Fixes for API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="491529992" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46522" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46522/hovercard" href="https://github.com/elastic/elasticsearch/pull/46522">#46522</a><a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-16T09:23:57Z" class="no-wrap">Sep 16, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.close.json" id="d613995d3cc3e47e00e6584ccfb82a35-f26c8e77a06a63576290bac072246490c19858ea" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.close.json">indices.close.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.create.json" id="63f95a3c21061e2fb572cef0eb2eab90-da34028d87a78d94ce26047204c330a5d6d93eed" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.create.json">indices.create.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">Add prefer_v2_templates flag and index setting (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="602098871" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55411" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55411/hovercard" href="https://github.com/elastic/elasticsearch/pull/55411">#55411</a><a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T16:04:42Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.create_data_stream.json" id="7a11ae4ec404953de17e94ac7b19a641-ef8615a69b1cad525a4ba17a37a71d6ae77c5544" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.create_data_stream.json">indices.create_data_stream.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Initial data stream commit (#53666)

* Initial data stream commit

This commits adds a data stream feature flag, initial definition of a data stream and
the stubs for the data stream create, delete and get APIs. Also simple serialization
tests are added and a rest test to thest the data stream API stubs.

This is a large amount of code and mainly mechanical, but this commit should be
straightforward to review, because there isn't any real logic.

The data stream transport and rest action are behind the data stream feature flag and
are only intialized if the feature flag is enabled. The feature flag is enabled if
elasticsearch is build as snapshot or a release build and the
'es.datastreams_feature_flag_registered' is enabled.

The integ-test-zip sets the feature flag if building a release build, otherwise
rest tests would fail.

Relates to #53100

* fixed hlrc test

* ignore bwc until this change has been backported to 7.x branch

* changed data stream apis to be a cluster based action.

before this commit the data steams api were indices based actions,
but data streams aren't indices, data streams encapsulates indices,
but are indices themselves. It is a cluster level attribute, and
therefor cluster based action fits best for now.

Perhaps in the future we will have data stream based actions and
then this would be a right fit for the data stream crud apis.

* this should have been part of the previous commit

* fixed yaml test

* Also add feature flag in other modules that run the yaml test if a release build is executed

* Reverted the commits that make data stream a cluster based api

This reverts commit e362eeb669b8d20a6bede467155c6a832e1bf1ad.

* Make data stream crud apis work like a indices based api.

* renamed timestamp field

* fixed compile error after merging in master

* fixed merge mistake

* moved setting system property

* applied review comments" class="link-gray" href="/elastic/elasticsearch/commit/12046084f98721efc8b86b95ce0651ef99b46577">Initial data stream commit (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="583054399" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53666" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53666/hovercard" href="https://github.com/elastic/elasticsearch/pull/53666">#53666</a><a data-pjax="true" title="Initial data stream commit (#53666)

* Initial data stream commit

This commits adds a data stream feature flag, initial definition of a data stream and
the stubs for the data stream create, delete and get APIs. Also simple serialization
tests are added and a rest test to thest the data stream API stubs.

This is a large amount of code and mainly mechanical, but this commit should be
straightforward to review, because there isn't any real logic.

The data stream transport and rest action are behind the data stream feature flag and
are only intialized if the feature flag is enabled. The feature flag is enabled if
elasticsearch is build as snapshot or a release build and the
'es.datastreams_feature_flag_registered' is enabled.

The integ-test-zip sets the feature flag if building a release build, otherwise
rest tests would fail.

Relates to #53100

* fixed hlrc test

* ignore bwc until this change has been backported to 7.x branch

* changed data stream apis to be a cluster based action.

before this commit the data steams api were indices based actions,
but data streams aren't indices, data streams encapsulates indices,
but are indices themselves. It is a cluster level attribute, and
therefor cluster based action fits best for now.

Perhaps in the future we will have data stream based actions and
then this would be a right fit for the data stream crud apis.

* this should have been part of the previous commit

* fixed yaml test

* Also add feature flag in other modules that run the yaml test if a release build is executed

* Reverted the commits that make data stream a cluster based api

This reverts commit e362eeb669b8d20a6bede467155c6a832e1bf1ad.

* Make data stream crud apis work like a indices based api.

* renamed timestamp field

* fixed compile error after merging in master

* fixed merge mistake

* moved setting system property

* applied review comments" class="link-gray" href="/elastic/elasticsearch/commit/12046084f98721efc8b86b95ce0651ef99b46577">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-20T10:22:18Z" class="no-wrap">Mar 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.delete.json" id="a48e4dc86992215871f3270ad541bc6d-53fdf44bb36a13a6a56540b3ab8d0b3e78d485cc" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.delete.json">indices.delete.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.delete_alias.json" id="9a24979aa4a99ba087361de8997ba9d8-13abf70ca739bb5a34fa4a886f8738b685644572" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.delete_alias.json">indices.delete_alias.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.delete_data_stream.json" id="f74d9e2e6cf5902d865025c35a263ae0-71ed5808caefc2e42cf42665508870c57a11ff5f" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.delete_data_stream.json">indices.delete_data_stream.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Initial data stream commit (#53666)

* Initial data stream commit

This commits adds a data stream feature flag, initial definition of a data stream and
the stubs for the data stream create, delete and get APIs. Also simple serialization
tests are added and a rest test to thest the data stream API stubs.

This is a large amount of code and mainly mechanical, but this commit should be
straightforward to review, because there isn't any real logic.

The data stream transport and rest action are behind the data stream feature flag and
are only intialized if the feature flag is enabled. The feature flag is enabled if
elasticsearch is build as snapshot or a release build and the
'es.datastreams_feature_flag_registered' is enabled.

The integ-test-zip sets the feature flag if building a release build, otherwise
rest tests would fail.

Relates to #53100

* fixed hlrc test

* ignore bwc until this change has been backported to 7.x branch

* changed data stream apis to be a cluster based action.

before this commit the data steams api were indices based actions,
but data streams aren't indices, data streams encapsulates indices,
but are indices themselves. It is a cluster level attribute, and
therefor cluster based action fits best for now.

Perhaps in the future we will have data stream based actions and
then this would be a right fit for the data stream crud apis.

* this should have been part of the previous commit

* fixed yaml test

* Also add feature flag in other modules that run the yaml test if a release build is executed

* Reverted the commits that make data stream a cluster based api

This reverts commit e362eeb669b8d20a6bede467155c6a832e1bf1ad.

* Make data stream crud apis work like a indices based api.

* renamed timestamp field

* fixed compile error after merging in master

* fixed merge mistake

* moved setting system property

* applied review comments" class="link-gray" href="/elastic/elasticsearch/commit/12046084f98721efc8b86b95ce0651ef99b46577">Initial data stream commit (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="583054399" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53666" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53666/hovercard" href="https://github.com/elastic/elasticsearch/pull/53666">#53666</a><a data-pjax="true" title="Initial data stream commit (#53666)

* Initial data stream commit

This commits adds a data stream feature flag, initial definition of a data stream and
the stubs for the data stream create, delete and get APIs. Also simple serialization
tests are added and a rest test to thest the data stream API stubs.

This is a large amount of code and mainly mechanical, but this commit should be
straightforward to review, because there isn't any real logic.

The data stream transport and rest action are behind the data stream feature flag and
are only intialized if the feature flag is enabled. The feature flag is enabled if
elasticsearch is build as snapshot or a release build and the
'es.datastreams_feature_flag_registered' is enabled.

The integ-test-zip sets the feature flag if building a release build, otherwise
rest tests would fail.

Relates to #53100

* fixed hlrc test

* ignore bwc until this change has been backported to 7.x branch

* changed data stream apis to be a cluster based action.

before this commit the data steams api were indices based actions,
but data streams aren't indices, data streams encapsulates indices,
but are indices themselves. It is a cluster level attribute, and
therefor cluster based action fits best for now.

Perhaps in the future we will have data stream based actions and
then this would be a right fit for the data stream crud apis.

* this should have been part of the previous commit

* fixed yaml test

* Also add feature flag in other modules that run the yaml test if a release build is executed

* Reverted the commits that make data stream a cluster based api

This reverts commit e362eeb669b8d20a6bede467155c6a832e1bf1ad.

* Make data stream crud apis work like a indices based api.

* renamed timestamp field

* fixed compile error after merging in master

* fixed merge mistake

* moved setting system property

* applied review comments" class="link-gray" href="/elastic/elasticsearch/commit/12046084f98721efc8b86b95ce0651ef99b46577">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-20T10:22:18Z" class="no-wrap">Mar 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.delete_index_template.json" id="ebdec42b54daedb082bda0565695f30f-60225667d3782f0a6a3a703cbba673d043f339a3" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.delete_index_template.json">indices.delete_index_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add REST APIs for IndexTemplateV2Metadata CRUD (#54039)

* Add REST APIs for IndexTemplateV2Metadata CRUD

This commit adds the get/put/delete APIs for interacting with the now v2 versions of index
templates.

These APIs are behind the existing `es.itv2_feature_flag_registered` system property feature flag.

Relates to #53101

* Add exceptions for HLRC tests

* Add skips for 7.x versions

* Use index_template instead of template_v2 in action names

* Add test for MetaDataIndexTemplateService.addIndexTemplateV2

* Move removal to static method and add test

* Add unit tests for request classes (implement hashCode &amp; equals)

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/e89e916738ff132cd2b2be7da06f5dd3a38b14ca">Add REST APIs for IndexTemplateV2Metadata CRUD (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="586578030" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54039" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54039/hovercard" href="https://github.com/elastic/elasticsearch/pull/54039">#54039</a><a data-pjax="true" title="Add REST APIs for IndexTemplateV2Metadata CRUD (#54039)

* Add REST APIs for IndexTemplateV2Metadata CRUD

This commit adds the get/put/delete APIs for interacting with the now v2 versions of index
templates.

These APIs are behind the existing `es.itv2_feature_flag_registered` system property feature flag.

Relates to #53101

* Add exceptions for HLRC tests

* Add skips for 7.x versions

* Use index_template instead of template_v2 in action names

* Add test for MetaDataIndexTemplateService.addIndexTemplateV2

* Move removal to static method and add test

* Add unit tests for request classes (implement hashCode &amp; equals)

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/e89e916738ff132cd2b2be7da06f5dd3a38b14ca">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-27T13:56:29Z" class="no-wrap">Mar 27, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.delete_template.json" id="7e86ed5d6fec40fca7550c69311db515-ca484a73e99f9e3dd79923313451fbe15007588c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.delete_template.json">indices.delete_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.exists.json" id="8adc33572e46831f609304d8616b1b1d-7539f44a81eedeebb690bf43e19d1644bff959a6" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.exists.json">indices.exists.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.exists_alias.json" id="a8d7a4ce4b4a60cb658f043d5488dd39-66e5ce92cbbe5d5fbdea73784d4fc268fa6dd5df" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.exists_alias.json">indices.exists_alias.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.exists_index_template.json" id="e2451d36c7c0809231f6d63aa7b8d110-99471c50deef247c3de0af2f560efbf7126d5867" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.exists_index_template.json">indices.exists_index_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="HLRC support for Index Templates V2 (#54838)

* HLRC support for Index Templates V2

This change adds High Level Rest Client support for Index Templates V2.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/b8ca70b8aad53df09d9ec4d3bd097c37f457a5a2">HLRC support for Index Templates V2 (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="595360744" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54838" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54838/hovercard" href="https://github.com/elastic/elasticsearch/pull/54838">#54838</a><a data-pjax="true" title="HLRC support for Index Templates V2 (#54838)

* HLRC support for Index Templates V2

This change adds High Level Rest Client support for Index Templates V2.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/b8ca70b8aad53df09d9ec4d3bd097c37f457a5a2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-07T23:11:02Z" class="no-wrap">Apr 7, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.exists_template.json" id="3431ee0eca88f8bae40fe200f78f2d99-9796bdd9d21ff920e915a5292bee64c9c06e3b67" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.exists_template.json">indices.exists_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.exists_type.json" id="e3050c1e9f7f37ca82a87ed38a0bb95f-c854d0e8fd8411debaad1fbdc6abbeb871cee606" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.exists_type.json">indices.exists_type.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.flush.json" id="9c0d06f79fd7551fb765652a4296136e-35138b920466f6a4ff025ca671beb22722045761" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.flush.json">indices.flush.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.forcemerge.json" id="8ed0e5c235f9cfc480bab92241aefd82-6036b75bb83e4c3bb3431ebac1641dc277e7ea3d" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.forcemerge.json">indices.forcemerge.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get.json" id="c7dfb0129e6d01bcdaa59a6d9bef56b1-90a1274ecb0595739c8905e87aaacac416d99cce" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get.json">indices.get.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_alias.json" id="b359991822afa51a4920347b06236830-5bfdd985a0a85821eafcc106a117ffb0db6b98d6" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_alias.json">indices.get_alias.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_data_streams.json" id="38ca0a3e3b41c60f568b1f1880af8bb5-4af892e101b2249042c5e925e387547a8be7d22d" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_data_streams.json">indices.get_data_streams.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Get data stream accepts single search parameter (#54530)" class="link-gray" href="/elastic/elasticsearch/commit/959f41e3d1a460584fc453a5a0deda471c7d2205">Get data stream accepts single search parameter (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="591382281" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54530" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54530/hovercard" href="https://github.com/elastic/elasticsearch/pull/54530">#54530</a><a data-pjax="true" title="Get data stream accepts single search parameter (#54530)" class="link-gray" href="/elastic/elasticsearch/commit/959f41e3d1a460584fc453a5a0deda471c7d2205">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-03T14:32:42Z" class="no-wrap">Apr 3, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_field_mapping.json" id="7a95e8e39115ae0693c0e9ebac94aae4-0e71b6d3957778c42a43fe143a9ada761c005edf" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_field_mapping.json">indices.get_field_mapping.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_index_template.json" id="6dc9eef401d0296102b141267c29fd30-870eeaea0859ceace893b9ec24e799895c69bd78" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_index_template.json">indices.get_index_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add REST APIs for IndexTemplateV2Metadata CRUD (#54039)

* Add REST APIs for IndexTemplateV2Metadata CRUD

This commit adds the get/put/delete APIs for interacting with the now v2 versions of index
templates.

These APIs are behind the existing `es.itv2_feature_flag_registered` system property feature flag.

Relates to #53101

* Add exceptions for HLRC tests

* Add skips for 7.x versions

* Use index_template instead of template_v2 in action names

* Add test for MetaDataIndexTemplateService.addIndexTemplateV2

* Move removal to static method and add test

* Add unit tests for request classes (implement hashCode &amp; equals)

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/e89e916738ff132cd2b2be7da06f5dd3a38b14ca">Add REST APIs for IndexTemplateV2Metadata CRUD (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="586578030" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54039" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54039/hovercard" href="https://github.com/elastic/elasticsearch/pull/54039">#54039</a><a data-pjax="true" title="Add REST APIs for IndexTemplateV2Metadata CRUD (#54039)

* Add REST APIs for IndexTemplateV2Metadata CRUD

This commit adds the get/put/delete APIs for interacting with the now v2 versions of index
templates.

These APIs are behind the existing `es.itv2_feature_flag_registered` system property feature flag.

Relates to #53101

* Add exceptions for HLRC tests

* Add skips for 7.x versions

* Use index_template instead of template_v2 in action names

* Add test for MetaDataIndexTemplateService.addIndexTemplateV2

* Move removal to static method and add test

* Add unit tests for request classes (implement hashCode &amp; equals)

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/e89e916738ff132cd2b2be7da06f5dd3a38b14ca">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-27T13:56:29Z" class="no-wrap">Mar 27, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_mapping.json" id="043a6a009b58931d43b9f4fcf495e584-5a27f6d06b83c2d5b44c21118456cc70326b14cf" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_mapping.json">indices.get_mapping.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_settings.json" id="573611d97c9a674af4eb1fd67f06ba87-68e325446d3dc5e1b0d486c1fafd38d2784a932c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_settings.json">indices.get_settings.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_template.json" id="6a31359bb097d3ebbe0a9ee6758c86ea-337016763ad0ac9884216a181a73aa87a736aecf" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_template.json">indices.get_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove include_type_name from the REST API spec and docs. (#48828)

In #48632 we removed support for `include_type_name` in the REST API. This PR
removes it from the API spec and documentation." class="link-gray" href="/elastic/elasticsearch/commit/33a7f066e134be1e004759408e9c620f9fa6748b">Remove include_type_name from the REST API spec and docs. (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="516398744" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/48828" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/48828/hovercard" href="https://github.com/elastic/elasticsearch/pull/48828">#48828</a><a data-pjax="true" title="Remove include_type_name from the REST API spec and docs. (#48828)

In #48632 we removed support for `include_type_name` in the REST API. This PR
removes it from the API spec and documentation." class="link-gray" href="/elastic/elasticsearch/commit/33a7f066e134be1e004759408e9c620f9fa6748b">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-11-12T17:42:46Z" class="no-wrap">Nov 12, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.get_upgrade.json" id="8a2688acbdae5eff0da90082f894d6ff-68cfdf25aeea2c2a77439bd3163c39d0c338d7fb" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.get_upgrade.json">indices.get_upgrade.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.open.json" id="373e5d7e5484cc081c4980032ab53333-1dab468ce4ff47a1668604b1eb4af956ed20969f" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.open.json">indices.open.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.put_alias.json" id="7c4d55dd18903fbe6a08229325f31825-603f24b665eb71cf103526389c3e6f78b6afcfe0" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.put_alias.json">indices.put_alias.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.put_index_template.json" id="c4e089db65f1671e83da28e1d66a02eb-b3b0625817794527cd3917d64ad31ec13ba377ba" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.put_index_template.json">indices.put_index_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add REST APIs for IndexTemplateV2Metadata CRUD (#54039)

* Add REST APIs for IndexTemplateV2Metadata CRUD

This commit adds the get/put/delete APIs for interacting with the now v2 versions of index
templates.

These APIs are behind the existing `es.itv2_feature_flag_registered` system property feature flag.

Relates to #53101

* Add exceptions for HLRC tests

* Add skips for 7.x versions

* Use index_template instead of template_v2 in action names

* Add test for MetaDataIndexTemplateService.addIndexTemplateV2

* Move removal to static method and add test

* Add unit tests for request classes (implement hashCode &amp; equals)

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/e89e916738ff132cd2b2be7da06f5dd3a38b14ca">Add REST APIs for IndexTemplateV2Metadata CRUD (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="586578030" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54039" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54039/hovercard" href="https://github.com/elastic/elasticsearch/pull/54039">#54039</a><a data-pjax="true" title="Add REST APIs for IndexTemplateV2Metadata CRUD (#54039)

* Add REST APIs for IndexTemplateV2Metadata CRUD

This commit adds the get/put/delete APIs for interacting with the now v2 versions of index
templates.

These APIs are behind the existing `es.itv2_feature_flag_registered` system property feature flag.

Relates to #53101

* Add exceptions for HLRC tests

* Add skips for 7.x versions

* Use index_template instead of template_v2 in action names

* Add test for MetaDataIndexTemplateService.addIndexTemplateV2

* Move removal to static method and add test

* Add unit tests for request classes (implement hashCode &amp; equals)

Co-authored-by: Elastic Machine &lt;elasticmachine@users.noreply.github.com&gt;" class="link-gray" href="/elastic/elasticsearch/commit/e89e916738ff132cd2b2be7da06f5dd3a38b14ca">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-27T13:56:29Z" class="no-wrap">Mar 27, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.put_mapping.json" id="250bd21a9bccfcf55d2e743ea58da37e-18a42ec11a45ea222236e97f1f6b6b2bf4d637c6" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.put_mapping.json">indices.put_mapping.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.put_settings.json" id="d6b150b68eeb6f484cdae6fec82c913f-66fe23bab8ba21ff46260cd227fc3b464091bafc" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.put_settings.json">indices.put_settings.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.put_template.json" id="481ea697fa69449ad04daf3c10691415-75a328af929ef313aa86ab015e6e7e382aa80573" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.put_template.json">indices.put_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="[DOCS] Remove incorrect parms from put index template API docs (#53750)

Removes the `flat_settings` and `timeout` query parameters from the JSON
spec and asciidoc docs for the put index template API.

These parameters are not supported by the API." class="link-gray" href="/elastic/elasticsearch/commit/03caeaad79bd29bda66f3af70791b06fc67a5e4f">[DOCS] Remove incorrect parms from put index template API docs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="583878409" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53750" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53750/hovercard" href="https://github.com/elastic/elasticsearch/pull/53750">#53750</a><a data-pjax="true" title="[DOCS] Remove incorrect parms from put index template API docs (#53750)

Removes the `flat_settings` and `timeout` query parameters from the JSON
spec and asciidoc docs for the put index template API.

These parameters are not supported by the API." class="link-gray" href="/elastic/elasticsearch/commit/03caeaad79bd29bda66f3af70791b06fc67a5e4f">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-18T18:33:40Z" class="no-wrap">Mar 18, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.recovery.json" id="7a1cc9a6701c8cfa3c52bbaffa9f22b8-8b134bbe2413abb84bbf47652781a1970c6bb655" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.recovery.json">indices.recovery.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.refresh.json" id="3717be850ac7c14c749c955fb79f61d7-950e0a62489fab3efa83395afad7bf85c22fb791" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.refresh.json">indices.refresh.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.rollover.json" id="14723a9901769a1e011b20ea6ee6e4c8-0fd311878736f2d6e8dffa744946cbc922f29dc2" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.rollover.json">indices.rollover.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">Add prefer_v2_templates flag and index setting (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="602098871" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55411" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55411/hovercard" href="https://github.com/elastic/elasticsearch/pull/55411">#55411</a><a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T16:04:42Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.segments.json" id="56a2f2774152e652738ca9703cf447dc-83430a9a85600b6582483eac86643a5ca3d4f79a" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.segments.json">indices.segments.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.shard_stores.json" id="ec6f9508e9a4bc767d082c48ac6f3467-7e48e999161719e0ca98b8543dfbe4d67e64b232" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.shard_stores.json">indices.shard_stores.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.shrink.json" id="7516673cb9d752712d9dbd96aa438513-b4a489d2303027a68495fac6dc552368f2b812be" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.shrink.json">indices.shrink.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.split.json" id="ac528bc538932b6817c0bdc7a52712c5-96517918defeae815fe35d36f5d2a436eecfbae6" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.split.json">indices.split.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.stats.json" id="cb782133ac617be36b33b196df8059b5-2a3659dfb892a98a76077dc92b427b93dd980fbc" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.stats.json">indices.stats.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add Bulk stats track the bulk per shard (#52208)

* Add Bulk stats track the bulk sizes per shard and the time spent on the bulk shard request (#50536)(#47345)" class="link-gray" href="/elastic/elasticsearch/commit/05066aecf071ef0f66f99d83a1c95e3c8f11025b">Add Bulk stats track the bulk per shard (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="563251524" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/52208" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/52208/hovercard" href="https://github.com/elastic/elasticsearch/pull/52208">#52208</a><a data-pjax="true" title="Add Bulk stats track the bulk per shard (#52208)

* Add Bulk stats track the bulk sizes per shard and the time spent on the bulk shard request (#50536)(#47345)" class="link-gray" href="/elastic/elasticsearch/commit/05066aecf071ef0f66f99d83a1c95e3c8f11025b">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T09:09:29Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.update_aliases.json" id="655e7332a9c5cd438b45d4ff1cb30b85-d4a222f2061c894233e585dc25f0d63bd077fede" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.update_aliases.json">indices.update_aliases.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.upgrade.json" id="49572445346c6fe5f226279051b88082-406fbacda307c93d87d9ea9f643bf8cee8c84507" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.upgrade.json">indices.upgrade.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="indices.validate_query.json" id="abeaaf04f453c9902ecb8d3315d3d43d-3becec003a9e6355bd1bd000dd1d4fb529becaff" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/indices.validate_query.json">indices.validate_query.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="info.json" id="379da8ee275d0393f12cdff8542d368d-1c48f05d02e9dc5c15af1a8053eba3b664bd3491" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/info.json">info.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">Fixes for API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="491529992" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46522" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46522/hovercard" href="https://github.com/elastic/elasticsearch/pull/46522">#46522</a><a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-16T09:23:57Z" class="no-wrap">Sep 16, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="ingest.delete_pipeline.json" id="0e3cce9c7c890967008104d432d44512-29b4219038cd2381af085c91fb1cf7cb989ae493" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/ingest.delete_pipeline.json">ingest.delete_pipeline.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="ingest.get_pipeline.json" id="ecbb3db0b51999ffdc3b41147aa4cefb-65fc4f91b2b42e4529e79451d73fb6ca50281714" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/ingest.get_pipeline.json">ingest.get_pipeline.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="ingest.processor_grok.json" id="7ed3b0f1d1e97c568a739a772e11c73f-ac8ad6e6d06692e8bfb5ad31652f0f03ed18ac48" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/ingest.processor_grok.json">ingest.processor_grok.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="ingest.put_pipeline.json" id="b91f3d9b86bfca8eef0f299e2b2e70b6-4d2105866791cab1ccfa10b90b4f942cd1907533" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/ingest.put_pipeline.json">ingest.put_pipeline.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="ingest.simulate.json" id="e7e2a3116903667cf373c07e2a38a61d-8122f7a0ffa1965fc5616ba2383e0ec7680cfbba" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/ingest.simulate.json">ingest.simulate.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="mget.json" id="7db3deffe9680ffd2cdb16a331aea2fa-12496718e714b494d6db124c670a028764aa2428" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/mget.json">mget.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove types from Get/MultiGet (#46587)

This commit removes types from the ShardGetService, and propagates this API change
up through the Transport and Rest actions for Get and MultiGet

Relates to #41059" class="link-gray" href="/elastic/elasticsearch/commit/7c90801aff398d9b73e4fa24933550d2320a5a4d">Remove types from Get/MultiGet (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="492118524" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46587" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46587/hovercard" href="https://github.com/elastic/elasticsearch/pull/46587">#46587</a><a data-pjax="true" title="Remove types from Get/MultiGet (#46587)

This commit removes types from the ShardGetService, and propagates this API change
up through the Transport and Rest actions for Get and MultiGet

Relates to #41059" class="link-gray" href="/elastic/elasticsearch/commit/7c90801aff398d9b73e4fa24933550d2320a5a4d">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-20T13:22:57Z" class="no-wrap">Sep 20, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="msearch.json" id="41473f6391667dbfeb8f12856e6dbf9b-968ccfd8e718f6187d4ffef06c6071b9e3bbb971" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/msearch.json">msearch.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add heuristics to compute pre_filter_shard_size when unspecified (#53873)

This commit changes the pre_filter_shard_size default from 128 to unspecified.
This allows to apply heuristics based on the request and the target indices when deciding
whether the can match phase should run or not. When unspecified, this pr runs the can match phase
automatically if one of these conditions is met:
  * The request targets more than 128 shards.
  * The request contains read-only indices.
  * The primary sort of the query targets an indexed field.
Users can opt-out from this behavior by setting the `pre_filter_shard_size` to a static value.

Closes #39835" class="link-gray" href="/elastic/elasticsearch/commit/04bd154037172d5c4a09250e1c60beb07d5b5c87">Add heuristics to compute pre_filter_shard_size when unspecified (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="585097079" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53873" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53873/hovercard" href="https://github.com/elastic/elasticsearch/pull/53873">#53873</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-23T18:06:32Z" class="no-wrap">Mar 23, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="msearch_template.json" id="629bbf6b4cbf585e08d921c771f7f65e-2d8be2f1cf4034125624407fef09850147c80d75" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/msearch_template.json">msearch_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="mtermvectors.json" id="717daf7be8083a78bf284fe4a9a25223-0afe5a316b285293540f67ccb400139f14455ef1" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/mtermvectors.json">mtermvectors.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">Remove force from version_type enum in rest-spec (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525745740" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49370" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49370/hovercard" href="https://github.com/elastic/elasticsearch/pull/49370">#49370</a><a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-11-26T08:58:33Z" class="no-wrap">Nov 26, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="nodes.hot_threads.json" id="0ef0e709908091e3498307d32d74fa69-e69b6acd21c8b7d7337aa0b08701f4c762c73300" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/nodes.hot_threads.json">nodes.hot_threads.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove deprecated endpoints of hot threads API (#55109)

This removes deprecated endpoints in hot threads action.

Closes #52640" class="link-gray" href="/elastic/elasticsearch/commit/db1236ce3da580688a3897ef386cf08be4b54fdb">Remove deprecated endpoints of hot threads API (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="598872961" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55109" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55109/hovercard" href="https://github.com/elastic/elasticsearch/pull/55109">#55109</a><a data-pjax="true" title="Remove deprecated endpoints of hot threads API (#55109)

This removes deprecated endpoints in hot threads action.

Closes #52640" class="link-gray" href="/elastic/elasticsearch/commit/db1236ce3da580688a3897ef386cf08be4b54fdb">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-14T19:36:57Z" class="no-wrap">Apr 14, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="nodes.info.json" id="827644931be55e9818fb73ba26553cba-37279edd3106f5a01cb6d94c4a219c124c55ea16" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/nodes.info.json">nodes.info.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="nodes.reload_secure_settings.json" id="bbdf0cb0d2a8bb7cce8a0f61406dd5ff-fd5420d028881b0cac605eddeb39e5414e586cbd" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/nodes.reload_secure_settings.json">nodes.reload_secure_settings.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Fix ReloadSecureSettings API to consume password (#54771)

The secure_settings_password was never taken into consideration in
the ReloadSecureSettings API. This commit fixes that and adds
necessary REST layer testing. Doing so, it also

- Allows TestClusters to have a password protected keystore
so that it can be set for tests.
- Adds a parameter to the run task so that elastisearch can
be run with a password protected keystore from source." class="link-gray" href="/elastic/elasticsearch/commit/16e9433ead160b27307c99bffd78ff9ac45e3955">Fix ReloadSecureSettings API to consume password (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="594462608" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54771" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54771/hovercard" href="https://github.com/elastic/elasticsearch/pull/54771">#54771</a><a data-pjax="true" title="Fix ReloadSecureSettings API to consume password (#54771)

The secure_settings_password was never taken into consideration in
the ReloadSecureSettings API. This commit fixes that and adds
necessary REST layer testing. Doing so, it also

- Allows TestClusters to have a password protected keystore
so that it can be set for tests.
- Adds a parameter to the run task so that elastisearch can
be run with a password protected keystore from source." class="link-gray" href="/elastic/elasticsearch/commit/16e9433ead160b27307c99bffd78ff9ac45e3955">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-10T13:48:36Z" class="no-wrap">Apr 10, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="nodes.stats.json" id="1402dc0afe821bc096932f4af7774b7b-0dc5e159a4528058c2a745eeea648e9698737009" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/nodes.stats.json">nodes.stats.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add Bulk stats track the bulk per shard (#52208)

* Add Bulk stats track the bulk sizes per shard and the time spent on the bulk shard request (#50536)(#47345)" class="link-gray" href="/elastic/elasticsearch/commit/05066aecf071ef0f66f99d83a1c95e3c8f11025b">Add Bulk stats track the bulk per shard (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="563251524" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/52208" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/52208/hovercard" href="https://github.com/elastic/elasticsearch/pull/52208">#52208</a><a data-pjax="true" title="Add Bulk stats track the bulk per shard (#52208)

* Add Bulk stats track the bulk sizes per shard and the time spent on the bulk shard request (#50536)(#47345)" class="link-gray" href="/elastic/elasticsearch/commit/05066aecf071ef0f66f99d83a1c95e3c8f11025b">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T09:09:29Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="nodes.usage.json" id="72f1e8a0ba301c435cff71883db2880d-5acbf7a51116cef41ce25b638087594e10c9dd19" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/nodes.usage.json">nodes.usage.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="ping.json" id="2c0ccb85c134546fc2419cd212d7c7a1-0e787e039d09e20d2002086296c215dc31ffd0da" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/ping.json">ping.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">Fixes for API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="491529992" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46522" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46522/hovercard" href="https://github.com/elastic/elasticsearch/pull/46522">#46522</a><a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-16T09:23:57Z" class="no-wrap">Sep 16, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="put_script.json" id="3e5e341e9944ac912cd75b44d94ffb18-750f7fdf4eb624004f1741ae918406bc2bc1b521" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/put_script.json">put_script.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="rank_eval.json" id="cb69be9aa835ff2f0d058b967a7bb2d4-eadf240192394fb25ab1ebcf7fcb82fbb67ef9ac" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/rank_eval.json">rank_eval.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="reindex.json" id="2247f212c49382eddd2483fc9e395e26-2fbaf86cab616a1a536b46ab530e8ab24999a05c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/reindex.json">reindex.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Fix the type for &quot;slices&quot; in the Reindex and Update By Query REST API specification (#51908)

This patch supplements #51792 and #51535 where the type of the &quot;slices&quot; parameter has been fixed." class="link-gray" href="/elastic/elasticsearch/commit/2ed9e95100474f3dfbeb7efb0529e237b8f61e53">Fix the type for "slices" in the Reindex and Update By Query REST API…</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-02-05T08:50:49Z" class="no-wrap">Feb 5, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="reindex_rethrottle.json" id="bde13cb71f4490f09233398a6b8b329d-d91365b3c49a5c08512abdfd92d6798176fd7523" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/reindex_rethrottle.json">reindex_rethrottle.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="render_search_template.json" id="cb9bf5f91f02219dae3acf287c8b1a1c-c2c474edd9853f082b6c7228318a9fe10e5b4b99" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/render_search_template.json">render_search_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">Fixes for API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="491529992" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/46522" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/46522/hovercard" href="https://github.com/elastic/elasticsearch/pull/46522">#46522</a><a data-pjax="true" title="Fixes for API specification (#46522)

Follow-up of #42346" class="link-gray" href="/elastic/elasticsearch/commit/a2a502b330468f8f18202b37eebeb473212b510a">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-09-16T09:23:57Z" class="no-wrap">Sep 16, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="scripts_painless_execute.json" id="23eb12d029f1e7d55c9be09bec246231-9f761fb452ba1c3077bd377af193e84d79c10f4c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/scripts_painless_execute.json">scripts_painless_execute.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="scroll.json" id="b68a77ffff64b26fa9efb03e5f4fec69-ea0cbe2675325fcb138169352ec65e7f4a499fce" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/scroll.json">scroll.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="search.json" id="36e64ee591eb44c77488faec76357456-ac321acf8907b8e576cddbb616b27bd67370fd8c" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/search.json">search.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add heuristics to compute pre_filter_shard_size when unspecified (#53873)

This commit changes the pre_filter_shard_size default from 128 to unspecified.
This allows to apply heuristics based on the request and the target indices when deciding
whether the can match phase should run or not. When unspecified, this pr runs the can match phase
automatically if one of these conditions is met:
  * The request targets more than 128 shards.
  * The request contains read-only indices.
  * The primary sort of the query targets an indexed field.
Users can opt-out from this behavior by setting the `pre_filter_shard_size` to a static value.

Closes #39835" class="link-gray" href="/elastic/elasticsearch/commit/04bd154037172d5c4a09250e1c60beb07d5b5c87">Add heuristics to compute pre_filter_shard_size when unspecified (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="585097079" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53873" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53873/hovercard" href="https://github.com/elastic/elasticsearch/pull/53873">#53873</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-23T18:06:32Z" class="no-wrap">Mar 23, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="search_shards.json" id="087e36570eccc7017ef612e4d4fcab82-74b7055b4c4b02b7c066872169941d316e8eb9ac" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/search_shards.json">search_shards.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="search_template.json" id="271a84623de72292ff6257d567a959a8-1d239376b3fe82f8796748d30747b2be7267da69" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/search_template.json">search_template.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">Allow _cat indices &amp; aliases to use indices options (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="577217946" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/53248" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/53248/hovercard" href="https://github.com/elastic/elasticsearch/pull/53248">#53248</a><a data-pjax="true" title="Allow _cat indices &amp; aliases to use indices options (#53248)

This commit adjusts the _cat/indices and _cat/aliases APIs to allow
specifying indices options, so that these APIs can handle hidden
indices/aliases in the same way as other APIs.

Also adds the hidden option to the expand_wildcards parameter
in the YAML spec for every API that accepts it." class="link-gray" href="/elastic/elasticsearch/commit/d7bbc9df1d3edf47f8d1c2f0983c88c64d78a4b4">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-03-13T17:57:00Z" class="no-wrap">Mar 13, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.cleanup_repository.json" id="3ae316792d0c2026e88cbbd6366670ff-ca4783368d1b1417c8fb3f08b9f841aa4071b4bb" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.cleanup_repository.json">snapshot.cleanup_repository.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.create.json" id="3142f56582a6a4f221f2ca9613092485-da8cb9916f5845588c04c0d54c45e89f25fbe8a1" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.create.json">snapshot.create.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.create_repository.json" id="3c7efb7259ad685fcc61441956417466-431ac3c68c0bd6493efbdb511d29adadde186fcb" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.create_repository.json">snapshot.create_repository.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.delete.json" id="057c6616838d5438ead24db42bab5b2e-30053cd5b94d38ea898b1d3f4f13c3f14926acff" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.delete.json">snapshot.delete.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.delete_repository.json" id="9af95f6a49693f226af744dec7d88ed3-b94c5f39b4f22a140f5536293d97d7662d6f2513" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.delete_repository.json">snapshot.delete_repository.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.get.json" id="651bdc0b78c2633f9a5da0947a67d317-20006f6f499b6b75278014ae076cc3be525b46f8" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.get.json">snapshot.get.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.get_repository.json" id="2dd6796f7524ee470c4ba617cb6be760-8c91caa4fe81f1fef10a9b77e6e3dddd0b47822b" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.get_repository.json">snapshot.get_repository.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.restore.json" id="b2377ab03bc2e7f239f6f9d2b1689802-697ea395dcc2b5bba9effdec2fed43c26c2f5154" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.restore.json">snapshot.restore.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.status.json" id="e790b0dada2bf67f54709c5f222b8ef1-70a7ba23ef50667dab65065b851448cd76ea52b3" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.status.json">snapshot.status.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="snapshot.verify_repository.json" id="4b88bdf4b93ee8150855454ee6b250f4-de638c19d4a0b774c6a0e58d6d475b3260da8770" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/snapshot.verify_repository.json">snapshot.verify_repository.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="tasks.cancel.json" id="97fecb58388bc9ded81c71e2449aa0a2-966197f4e76d4e95970ce0410eb1502cf62e9e85" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/tasks.cancel.json">tasks.cancel.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Support hierarchical task cancellation (#54757)

With this change, when a task is canceled, the task manager will cancel 
not only its direct child tasks but all also its descendant tasks.

Closes #50990" class="link-gray" href="/elastic/elasticsearch/commit/61e5350e770966172cd64430661eeb903bc94518">Support hierarchical task cancellation (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="593643336" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54757" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54757/hovercard" href="https://github.com/elastic/elasticsearch/pull/54757">#54757</a><a data-pjax="true" title="Support hierarchical task cancellation (#54757)

With this change, when a task is canceled, the task manager will cancel 
not only its direct child tasks but all also its descendant tasks.

Closes #50990" class="link-gray" href="/elastic/elasticsearch/commit/61e5350e770966172cd64430661eeb903bc94518">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-06T16:00:02Z" class="no-wrap">Apr 6, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="tasks.get.json" id="84cde85a559f649f17d265b19e75e5e1-63bd1b6a96e98572cb822bb75b18d46e55120258" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/tasks.get.json">tasks.get.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="tasks.list.json" id="3c886f3e2a8d77a0a541367c54e39d55-0aba6d6391d48668a12008952fe64dcd51e09c0e" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/tasks.list.json">tasks.list.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="termvectors.json" id="9c95f706bf29eccab82d573979265810-d9ba7c0b36cc576a50651c7181d0f557685bc351" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/termvectors.json">termvectors.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">Remove force from version_type enum in rest-spec (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="525745740" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/49370" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/49370/hovercard" href="https://github.com/elastic/elasticsearch/pull/49370">#49370</a><a data-pjax="true" title="Remove force from version_type enum in rest-spec (#49370)

As per #47228 `force` is no longer a valid option" class="link-gray" href="/elastic/elasticsearch/commit/8098276b7ffb72c31967c726d490c3950c40bdf2">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-11-26T08:58:33Z" class="no-wrap">Nov 26, 2019</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="update.json" id="2103efac9db966ed8688bc9b541c1638-479a9111ac2a66da15ff331f9df064ffbb0cb444" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/update.json">update.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">Add prefer_v2_templates flag and index setting (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="602098871" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/55411" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/55411/hovercard" href="https://github.com/elastic/elasticsearch/pull/55411">#55411</a><a data-pjax="true" title="Add prefer_v2_templates flag and index setting (#55411)

This commit adds a new querystring parameter on the following APIs:
- Index
- Update
- Bulk
- Create Index
- Rollover

These APIs now support a `?prefer_v2_templates=true|false` flag. This flag changes the preference
creation to use either V2 index templates or V1 templates. This flag defaults to `false` and will be
changed to `true` for 8.0+ in subsequent work.

Additionally, setting this flag internally sets the `index.prefer_v2_templates` index-level setting.
This setting is used so that actions that automatically create a new index (things like rollover
initiated by ILM) will inherit the preference from the original index. This setting is dynamic so
that a transition from v1 to v2 templates can occur for long-running indices grouped by an alias
performing periodic rollover.

This also adds support for sending this parameter to the High Level Rest Client.

Relates to #53101" class="link-gray" href="/elastic/elasticsearch/commit/0202e1ae960a3f5c837a490bdcea2a94a4fe321f">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-20T16:04:42Z" class="no-wrap">Apr 20, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="update_by_query.json" id="981891e5b7ef8732b758b429194f35cf-86fa8a60db43b47a1042aed35cff1d9e5fb961e9" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/update_by_query.json">update_by_query.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">Update rest API specs (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="588244996" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/54252" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/54252/hovercard" href="https://github.com/elastic/elasticsearch/pull/54252">#54252</a><a data-pjax="true" title="Update rest API specs (#54252)

This commit updates the rest API specs to validate against a
JSON schema for the specifications. Most updates are to add
a description, whilst others fix typos and unify conventions
e.g. deprecations, descriptions, urls starting with /. The schema 
conforms to draft-07 JSON schema." class="link-gray" href="/elastic/elasticsearch/commit/da37e01d32f9764c3937736ef0c7d3ab40af9a77">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2020-04-02T00:40:50Z" class="no-wrap">Apr 2, 2020</time-ago></span>
            </td>
          </tr>
          <tr class="js-navigation-item">
            <td class="icon">
              <svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>
              <img width="16" height="16" class="spinner" alt="" src="https://github.githubassets.com/images/spinners/octocat-spinner-32.gif" />
            </td>
            <td class="content">
              <span class="css-truncate css-truncate-target"><a class="js-navigation-open " title="update_by_query_rethrottle.json" id="c05f47cc8cf528dc751fcdf54e9da38a-bd70f6e1231c92333d9692bb3d8eccbb4dad35d9" href="/elastic/elasticsearch/blob/master/rest-api-spec/src/main/resources/rest-api-spec/api/update_by_query_rethrottle.json">update_by_query_rethrottle.json</a></span>
            </td>
            <td class="message">
              <span class="css-truncate css-truncate-target">
                    <a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">Update the schema for the REST API specification (</a><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="447092756" data-permission-text="Title is private" data-url="https://github.com/elastic/elasticsearch/issues/42346" data-hovercard-type="pull_request" data-hovercard-url="/elastic/elasticsearch/pull/42346/hovercard" href="https://github.com/elastic/elasticsearch/pull/42346">#42346</a><a data-pjax="true" title="Update the schema for the REST API specification (#42346)

* Update the REST API specification

This patch updates the REST API spefication in JSON files to better encode deprecated entities,
to improve specification of URL paths, and to open up the schema for future extensions.

Notably, it changes the `paths` from a list of strings to a list of objects, where each
particular object encodes all the information for this particular path: the `parts` and the `methods`.

Among the benefits of this approach is eg. encoding the difference between using the `PUT` and `POST`
methods in the Index API, to either use a specific document ID, or let Elasticsearch generate one.

Also `documentation` becomes an object that supports an `url` and also a `description` which is a
new field.

* Adapt YAML runner to new REST API specification format

The logic for choosing the path to use when running tests has been
simplified, as a consequence of the path parts being listed under each
path in the spec. The special case for create and index has been removed.

Also the parsing code has been hardened so that errors are thrown earlier
when the structure of the spec differs from what expected, and their
error messages should be more helpful." class="link-gray" href="/elastic/elasticsearch/commit/91663116221052b9aa05cc183d80c1e546073371">)</a>
              </span>
            </td>
            <td class="age">
              <span class="css-truncate css-truncate-target"><time-ago datetime="2019-08-15T15:15:30Z" class="no-wrap">Aug 15, 2019</time-ago></span>
            </td>
          </tr>
      </tbody>
    </table>




</div>

  



  </div>
</div>

    </main>
  </div>
  

  </div>

        
<div class="footer container-lg width-full px-3" role="contentinfo">
  <div class="position-relative d-flex flex-justify-between pt-6 pb-2 mt-6 f6 text-gray border-top border-gray-light ">
    <ul class="list-style-none d-flex flex-wrap ">
      <li class="mr-3">&copy; 2020 GitHub, Inc.</li>
        <li class="mr-3"><a data-ga-click="Footer, go to terms, text:terms" href="https://github.com/site/terms">Terms</a></li>
        <li class="mr-3"><a data-ga-click="Footer, go to privacy, text:privacy" href="https://github.com/site/privacy">Privacy</a></li>
        <li class="mr-3"><a data-ga-click="Footer, go to security, text:security" href="https://github.com/security">Security</a></li>
        <li class="mr-3"><a href="https://githubstatus.com/" data-ga-click="Footer, go to status, text:status">Status</a></li>
        <li><a data-ga-click="Footer, go to help, text:help" href="https://help.github.com">Help</a></li>

    </ul>

    <a aria-label="Homepage" title="GitHub" class="footer-octicon d-none d-lg-block mx-lg-4" href="https://github.com">
      <svg height="24" class="octicon octicon-mark-github" viewBox="0 0 16 16" version="1.1" width="24" aria-hidden="true"><path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"></path></svg>
</a>
   <ul class="list-style-none d-flex flex-wrap ">
        <li class="mr-3"><a data-ga-click="Footer, go to contact, text:contact" href="https://github.com/contact">Contact GitHub</a></li>
        <li class="mr-3"><a href="https://github.com/pricing" data-ga-click="Footer, go to Pricing, text:Pricing">Pricing</a></li>
      <li class="mr-3"><a href="https://developer.github.com" data-ga-click="Footer, go to api, text:api">API</a></li>
      <li class="mr-3"><a href="https://training.github.com" data-ga-click="Footer, go to training, text:training">Training</a></li>
        <li class="mr-3"><a href="https://github.blog" data-ga-click="Footer, go to blog, text:blog">Blog</a></li>
        <li><a data-ga-click="Footer, go to about, text:about" href="https://github.com/about">About</a></li>
    </ul>
  </div>
  <div class="d-flex flex-justify-center pb-6">
    <span class="f6 text-gray-light"></span>
  </div>
</div>



  <div id="ajax-error-message" class="ajax-error-message flash flash-error">
    <svg class="octicon octicon-alert" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 000 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 00.01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"></path></svg>
    <button type="button" class="flash-close js-ajax-error-dismiss" aria-label="Dismiss error">
      <svg class="octicon octicon-x" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z"></path></svg>
    </button>
    You can’t perform that action at this time.
  </div>


    <script crossorigin="anonymous" async="async" integrity="sha512-WcQmT2vhcClFVOaaAJV/M+HqsJ2Gq/myvl6F3gCVBxykazXTs+i5fvxncSXwyG1CSfcrqmLFw/R/bmFYzprX2A==" type="application/javascript" id="js-conditional-compat" data-src="https://github.githubassets.com/assets/compat-bootstrap-59c4264f.js"></script>
    <script crossorigin="anonymous" integrity="sha512-zi+aQjEcjeQ8BSa8GEz7LP+ppURFQUUwwewasqVCPAVkzlBVBunJz/EFcsScb/vuWUGQAmRkmEcQPqX8IJEfNA==" type="application/javascript" src="https://github.githubassets.com/assets/environment-bootstrap-ce2f9a42.js"></script>
      <script crossorigin="anonymous" async="async" integrity="sha512-JfA9c00QqdFAVbQaARMl2BJ+QwABPJ247GKHsBbdm7xq2P00Z6cmwPG7cFFXV0SVHPlKz8EqPiJeZDOZZTRFww==" type="application/javascript" src="https://github.githubassets.com/assets/vendor-25f03d73.js"></script>
      <script crossorigin="anonymous" async="async" integrity="sha512-VUiLQ4KY8pI64mYCjZV5ADM/mhxafMMk8mKpSqMNKRtYzYM+0T52k5RSGcw+qSjoHVCQlwrVDcRX8OZ46rX9tw==" type="application/javascript" src="https://github.githubassets.com/assets/frameworks-55488b43.js"></script>
    
    <script crossorigin="anonymous" async="async" integrity="sha512-FAOcSOlbja7d5v3RrZ0pC3WFDSTLAiqCopYiMV6DelJiHPgyjEDwkxLJ/NBUFJd2jtScDchrboBNLBLqou7S3A==" type="application/javascript" src="https://github.githubassets.com/assets/github-bootstrap-14039c48.js"></script>
    
    
    
  <div class="js-stale-session-flash flash flash-warn flash-banner" hidden
    >
    <svg class="octicon octicon-alert" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 000 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 00.01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"></path></svg>
    <span class="js-stale-session-flash-signed-in" hidden>You signed in with another tab or window. <a href="">Reload</a> to refresh your session.</span>
    <span class="js-stale-session-flash-signed-out" hidden>You signed out in another tab or window. <a href="">Reload</a> to refresh your session.</span>
  </div>
  <template id="site-details-dialog">
  <details class="details-reset details-overlay details-overlay-dark lh-default text-gray-dark hx_rsm" open>
    <summary role="button" aria-label="Close dialog"></summary>
    <details-dialog class="Box Box--overlay d-flex flex-column anim-fade-in fast hx_rsm-dialog hx_rsm-modal">
      <button class="Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0" type="button" aria-label="Close dialog" data-close-dialog>
        <svg class="octicon octicon-x" viewBox="0 0 12 16" version="1.1" width="12" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48L7.48 8z"></path></svg>
      </button>
      <div class="octocat-spinner my-6 js-details-dialog-spinner"></div>
    </details-dialog>
  </details>
</template>

  <div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;" tabindex="0">
  <div class="Popover-message Popover-message--bottom-left Popover-message--large Box box-shadow-large" style="width:360px;">
  </div>
</div>

  <div aria-live="polite" class="js-global-screen-reader-notice sr-only"></div>

  </body>
</html>

